Example #1
0
import json
import BaseHTTPServer
from sys import exc_info
from types import FunctionType
from urlparse import urlparse, parse_qs
from resources.lib.KodiHelper import KodiHelper
from resources.lib.utils import get_class_methods
from resources.lib.NetflixSession import NetflixSession
from resources.lib.NetflixHttpSubRessourceHandler import \
    NetflixHttpSubRessourceHandler

KODI_HELPER = KodiHelper()
NETFLIX_SESSION = NetflixSession(
    cookie_path=KODI_HELPER.cookie_path,
    data_path=KODI_HELPER.data_path,
    verify_ssl=KODI_HELPER.get_ssl_verification_setting(),
    log_fn=KODI_HELPER.log)

# get list of methods & instance form the sub ressource handler
METHODS = get_class_methods(class_item=NetflixHttpSubRessourceHandler)
RES_HANDLER = NetflixHttpSubRessourceHandler(kodi_helper=KODI_HELPER,
                                             netflix_session=NETFLIX_SESSION)


class NetflixHttpRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
    """Oppionionated internal proxy that dispatches requests to Netflix"""

    # pylint: disable=invalid-name
    def do_GET(self):
        """
        GET request handler
Example #2
0
# Created on: 07.03.2017

import BaseHTTPServer
import json
from types import FunctionType
from urlparse import urlparse, parse_qs
from resources.lib.KodiHelper import KodiHelper
from resources.lib.NetflixSession import NetflixSession
from resources.lib.NetflixHttpSubRessourceHandler import NetflixHttpSubRessourceHandler

kodi_helper = KodiHelper()

netflix_session = NetflixSession(
    cookie_path=kodi_helper.cookie_path,
    data_path=kodi_helper.data_path,
    verify_ssl=kodi_helper.get_ssl_verification_setting(),
    log_fn=kodi_helper.log)

# get list of methods & instance form the sub ressource handler
methods = [
    x for x, y in NetflixHttpSubRessourceHandler.__dict__.items()
    if type(y) == FunctionType
]
sub_res_handler = NetflixHttpSubRessourceHandler(
    kodi_helper=kodi_helper, netflix_session=netflix_session)


class NetflixHttpRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
    """ Represents the callable internal server that dispatches requests to Netflix"""
    def do_GET(self):
        """GET request handler (we only need this, as we only do GET requests internally)"""