Esempio n. 1
0
    def get(self):

        self.response.headers["Content-Type"] = "text/html"
        user_id = self.request.GET.get("user_id")
        otheruserprofile = True
        follow_text = "Follow"

        if user_id != None:
            myuser_key = ndb.Key("MyUser", user_id)
            myuser = myuser_key.get()

            tweets = Tweet.query(Tweet.user_id == myuser.key.id()).fetch(50)
            if user_id == str(Services().get_login_user().key.id()):
                otheruserprofile = False
            if user_id in Services().get_login_user().user_following:
                follow_text = "Unfollow"

        template_values = {
            "myuser": myuser,
            "tweets": tweets,
            "follow": follow_text,
            "otheruserprofile": otheruserprofile
        }

        template = JINJA_ENVIRONMENT.get_template("editprofile.html")
        self.response.write(template.render(template_values))
Esempio n. 2
0
    def post(self):
        self.response.headers["Content-Type"] = "text/html"

        share_text = self.request.get("share_text")
        share_image = self.request.get("share_image")

        if share_text != None or share_text != "":

            share_type = self.request.get("share_type")

            if share_type == "Update":

                edit_tweet_id = self.request.get("edit_tweet_id")
                edit_tweet = Services().get_tweet(tweet_id=edit_tweet_id)
                edit_tweet.share_text = share_text

                edit_tweet.put()

            else:

                myuser = Services().get_login_user()
                tweet = Tweet(share_text=share_text,
                              user_id=myuser.key.id(),
                              user_name=myuser.user_name,
                              time=datetime.datetime.now())
                tweet.put()

                myuser.tweet_ids.append(tweet.key.id())
                myuser.put()

        self.redirect("/")
Esempio n. 3
0
    def test_disciplines_with_grades(self):
        services = Services()
        repo = services.repository

        services = Services()
        repo = services.repository

        services.add(["student", "1", "stud 1"])
        services.add(["student", "2", "stud 2"])
        services.add(["student", "3", "stud 3"])
        services.add(["discipline", "1", "discipline 1"])
        services.add(["discipline", "2", "discipline 2"])

        self.assertEqual(repo.get_students_count(), 3)
        self.assertEqual(repo.get_disciplines_count(), 2)

        self.assertRaises(Exception, lambda: services.see_grades())

        services.grade(["1", "1", "10"])
        services.grade(["2", "1", "10"])
        services.grade(["2", "1", "1"])
        services.grade(["2", "1", "4"])
        services.grade(["2", "2", "5"])
        services.grade(["3", "1", "1"])
        services.grade(["3", "1", "2"])
        services.grade(["3", "1", "3"])
        services.grade(["3", "1", "4"])
        services.grade(["3", "2", "5"])
        self.assertEqual(repo.get_grades_count(), 10)

        self.assertIn("\n", services.see_grades())
Esempio n. 4
0
    def post(self):

        self.response.headers["Content-Type"] = "text/html"

        file = self.request.get("textfile")
        openFile = open(file)
        readLine = openFile.readline()

        while readLine:

            text_word = (readLine.strip('\n\r')).lower()
            sorted_key = Services().sorted_key(word=text_word)

            list_word = Anagram.query()
            list_word = list_word.filter(
                Anagram.anagram_key == sorted_key,
                Anagram.user_id == Services().get_current_user_id())
            list_word = list_word.fetch()

            valid_permutation = Services().validpermutations(text=sorted_key)

            if len(valid_permutation) > 0:

                if len(list_word) > 0:

                    anagram = list_word[0]

                    if text_word not in anagram.inputed_words:
                        inputed_words = anagram.inputed_words
                        inputed_words.append(text_word)
                        anagram.inputed_words = inputed_words
                        anagram.inputed_words_count = anagram.inputed_words_count + 1
                        anagram.put()

                else:

                    new_anagram = Anagram(
                        anagram_key=sorted_key,
                        anagram_words=Services().possiblepermutations(
                            text=sorted_key),
                        inputed_words=[text_word],
                        inputed_words_count=1,
                        word_length=len(text_word),
                        user_id=Services().get_current_user_id())
                    new_anagram.put()

            readLine = openFile.readline()

        openFile.close()

        message = "Upload completed"

        template_values = {'message': message}

        template = JINJA_ENVIRONMENT.get_template("importdata.html")
        self.response.write(template.render(template_values))
Esempio n. 5
0
    def toRDF(self):
        """
        Print a message into RDF in XML format
        """

        #rdf graph
        store = Graph()

        #namespaces
        from namespaces import SWAML, RDFS, FOAF
        store.bind('swaml', SWAML)
        store.bind('foaf', FOAF)
        store.bind('rdfs', RDFS)

        #message node
        message = URIRef(self.getUri())
        store.add((message, RDF.type, SWAML["Message"]))

        try:

            #sender
            sender = BNode()
            store.add((message, SWAML["sender"], sender))
            store.add((sender, RDF.type, FOAF["Person"]))

            name = self.getFromName()
            if (len(name) > 0):
                store.add((sender, FOAF["name"], Literal(name)))

            mail = self.getFromMail()
            store.add((sender, FOAF["mbox_sha1sum"],
                       Literal(Services().getShaMail(mail))))

            foafResource = Services().getFoaf(mail)
            if (foafResource != None):
                store.add((sender, RDFS["seeAlso"], URIRef(foafResource)))

            #mail details
            store.add((message, SWAML['id'], Literal(self.getSwamlId())))
            store.add((message, SWAML['to'], Literal(self.getTo())))
            store.add((message, SWAML['subject'], Literal(self.getSubject())))
            store.add((message, SWAML['date'], Literal(self.getDate())))
            store.add(
                (message, SWAML['inReplyTo'], Literal(self.getInReplyTo())))
            #store.add((message, SWAML['body'], Literal(self.getBody())))
            store.add((message, SWAML['body'], Literal(u'FIXME')))

        except UnicodeDecodeError, detail:
            print 'Error proccesing message ' + str(
                self.getId()) + ': ' + str(detail)
    def post(self):

        self.response.headers["Content-Type"] = "text/html"

        if self.request.get("addword") == "Add Word":
            user_word = self.request.get("word").lower()

            if Services().get_current_user() == None or user_word == None or user_word == "" :
                self.redirect("/addword")
                return

            current_user_id = Services().get_current_user_id()
            sorted_key = Services().sorted_key(word =user_word)

            list_word = Anagram.query()
            list_word = list_word.filter(Anagram.anagram_key == sorted_key,Anagram.user_id == current_user_id)
            list_word = list_word.fetch()

            valid_permutation = Services().validpermutations(text=sorted_key)


            if len(valid_permutation) == 0:
                self.redirect("/addword")
                return

            if len(list_word) > 0:
                anagram = list_word[0]

                if user_word in anagram.inputed_words:
                    self.redirect("/addword")
                    return

                inputed_words = anagram.inputed_words
                inputed_words.append(user_word)
                anagram.inputed_words = inputed_words
                anagram.inputed_words_count = anagram.inputed_words_count + 1
                anagram.put()

            else:

                new_anagram = Anagram(anagram_key=sorted_key,
                                   anagram_words = Services().possiblepermutations(text=sorted_key),
                                   inputed_words = [user_word],
                                   inputed_words_count = 1,
                                   word_length = len(user_word),
                                   user_id = current_user_id)
                new_anagram.put()

        self.redirect("/")
Esempio n. 7
0
 def __init__(self, token):
     self.device = Device(token)
     self.analysis = Analysis(analysis, token)
     self.account = Account(token)
     self.services = Services(token)
     # Token here corresponds to Third Party API_KEY
     self.extra = Extra(token)
Esempio n. 8
0
    def test_grade(self):
        services = Services()
        repo = services.repository

        services.add(["student", "1", "stud 1"])
        services.add(["discipline", "1", "discipline 1"])

        self.assertEqual(repo.get_students_count(), 1)
        self.assertEqual(repo.get_disciplines_count(), 1)

        self.assertRaises(Exception, lambda: services.grade([]))
        self.assertRaises(Exception, lambda: services.grade(["", "", ""]))
        self.assertRaises(Exception,
                          lambda: services.grade(["abc", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.grade(["0", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.grade(["1", "abc", "abc"]))
        self.assertRaises(Exception, lambda: services.grade(["1", "0", "abc"]))
        self.assertRaises(Exception, lambda: services.grade(["1", "1", "abc"]))
        self.assertRaises(Exception, lambda: services.grade(["1", "1", "0"]))
        self.assertRaises(Exception, lambda: services.grade(["1", "1", "11"]))

        services.grade(["1", "1", "1"])
        services.grade(["1", "1", "10"])
        services.grade(["1", "1", "5"])

        self.assertEqual(repo.get_grades_count(), 3)
Esempio n. 9
0
def gen_services(options):
    return Services(seed=int(options.seed),
                    number=int(options.num_services),
                    time=list(map(int, options.ss.split(','))),
                    duration_min=list(map(int, options.sd.split(','))),
                    duration_km=list(map(int, options.skm.split(','))),
                    num_passangers=list(map(int, options.sp.split(','))))
Esempio n. 10
0
    def test_add_discipline(self):
        services = Services()
        repo = services.repository

        self.assertRaises(Exception, lambda: services.add([]))
        self.assertRaises(Exception, lambda: services.add(["", "", ""]))
        self.assertRaises(Exception,
                          lambda: services.add(["abc", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.add(["discipline", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.add(["discipline", "0", "abc"]))
        services.add(["discipline", "0", "test"])

        discipline1 = repo.get_discipline(0)
        self.assertEqual(discipline1.id, 0)
        self.assertEqual(discipline1.name, "test")
        self.assertEqual(repo.get_disciplines_count(), 1)

        self.assertRaises(Exception,
                          lambda: services.add(["discipline", "0", "testing"]))
        services.add(["discipline", "1", "test"])

        discipline2 = repo.get_discipline(1)
        self.assertEqual(discipline2.id, 1)
        self.assertEqual(discipline2.name, "test")
        self.assertEqual(repo.get_disciplines_count(), 2)

        self.assertNotEqual(discipline1, discipline2)
Esempio n. 11
0
    def test_update_discipline(self):
        services = Services()
        repo = services.repository

        services.add(["discipline", "1", "discipline test"])
        self.assertEqual(repo.get_disciplines_count(), 1)
        discipline = repo.get_discipline(1)
        self.assertEqual(discipline.id, 1)
        self.assertEqual(discipline.name, "discipline test")

        self.assertRaises(Exception, lambda: services.update([]))
        self.assertRaises(Exception, lambda: services.update(["", "", ""]))
        self.assertRaises(Exception,
                          lambda: services.update(["abc", "abc", "abc"]))
        self.assertRaises(
            Exception, lambda: services.update(["discipline", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.update(["discipline", "0", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.update(["discipline", "1", "abc"]))
        services.update(["discipline", "1", "test"])

        self.assertEqual(discipline.id, 1)
        self.assertEqual(discipline.name, "test")
        self.assertEqual(repo.get_disciplines_count(), 1)
Esempio n. 12
0
 def __init__(self, name, mail):
     """Subscriber constructor"""
     self.__class__.id += 1
     self.setName(name)
     self.setMail(mail)
     self.setFoaf(Services().getFoaf(mail))
     self.mails = []
Esempio n. 13
0
    def test_address_not_existent(self):
        test_services = Services(True)
        test_services.drivers.data.append(Driver("Ion", 10, 10))

        self.assertRaises(
            Exception,
            lambda: test_services.get_closest_drivers_for_address("test"))
Esempio n. 14
0
    def test_add_student(self):
        services = Services()
        repo = services.repository

        self.assertRaises(Exception, lambda: services.add([]))
        self.assertRaises(Exception, lambda: services.add(["", "", ""]))
        self.assertRaises(Exception,
                          lambda: services.add(["abc", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.add(["student", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.add(["student", "0", "abc"]))
        services.add(["student", "0", "test"])

        student1 = repo.get_student(0)
        self.assertEqual(student1.id, 0)
        self.assertEqual(student1.name, "test")
        self.assertEqual(repo.get_students_count(), 1)

        self.assertRaises(Exception,
                          lambda: services.add(["student", "0", "testing"]))
        services.add(["student", "1", "test"])

        student2 = repo.get_student(1)
        self.assertEqual(student2.id, 1)
        self.assertEqual(student2.name, "test")
        self.assertEqual(repo.get_students_count(), 2)

        self.assertNotEqual(student1, student2)
Esempio n. 15
0
    def test_update_student(self):
        services = Services()
        repo = services.repository

        services.add(["student", "1", "student test"])
        self.assertEqual(repo.get_students_count(), 1)
        student = repo.get_student(1)
        self.assertEqual(student.id, 1)
        self.assertEqual(student.name, "student test")

        self.assertRaises(Exception, lambda: services.update([]))
        self.assertRaises(Exception, lambda: services.update(["", "", ""]))
        self.assertRaises(Exception,
                          lambda: services.update(["abc", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.update(["student", "abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.update(["student", "0", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.update(["student", "1", "abc"]))
        services.update(["student", "1", "test"])

        self.assertEqual(student.id, 1)
        self.assertEqual(student.name, "test")
        self.assertEqual(repo.get_students_count(), 1)
Esempio n. 16
0
def run_filter_above_test():
    expenses = []
    services = Services(expenses)

    try:
        services.filter_above([""])
        assert False
    except:
        assert True

    try:
        services.filter_above(["abc"])
        assert False
    except:
        assert True

    services.filter_above(["0"])

    services.add(["8", "4", "transport"])
    assert len(expenses) == 1

    services.add(["7", "2", "transport"])
    assert len(expenses) == 2

    services.add(["6", "1", "transport"])
    assert len(expenses) == 3

    services.add(["5", "2", "cloathing"])
    assert len(expenses) == 4

    services.filter_above(["1"])
    assert len(expenses) == 3
Esempio n. 17
0
    def test_remove_student(self):
        services = Services()
        repo = services.repository

        services.add(["discipline", "0", "discipline test"])
        services.add(["student", "1", "student 1 test"])
        services.add(["student", "2", "student 2 test"])
        services.grade(["1", "0", "10"])
        services.grade(["1", "0", "6"])
        services.grade(["2", "0", "9"])
        services.grade(["2", "0", "7"])
        services.grade(["2", "0", "8"])

        self.assertEqual(repo.get_students_count(), 2)
        self.assertEqual(repo.get_disciplines_count(), 1)
        self.assertEqual(repo.get_grades_count(), 5)

        self.assertRaises(Exception, lambda: services.remove([]))
        self.assertRaises(Exception, lambda: services.remove(["", ""]))
        self.assertRaises(Exception, lambda: services.remove(["abc", "abc"]))
        self.assertRaises(Exception,
                          lambda: services.remove(["student", "abc"]))
        self.assertRaises(Exception, lambda: services.remove(["student", "0"]))
        services.remove(["student", "2"])

        self.assertEqual(repo.get_students_count(), 1)
        self.assertEqual(repo.get_disciplines_count(), 1)
        self.assertEqual(repo.get_grades_count(), 2)
        self.assertRaises(Exception, lambda: services.remove(["student", "2"]))
Esempio n. 18
0
    def test_preload(self):
        services = Services()
        repo = services.repository
        services.preload_list()

        self.assertEqual(repo.get_students_count(), 10)
        self.assertEqual(repo.get_disciplines_count(), 10)
        self.assertEqual(repo.get_grades_count(), 10)
Esempio n. 19
0
    def post(self):

        self.response.headers["Content-Type"] = "text/html"

        user_id = self.request.get("user_id")

        if self.request.get("update_user") == "Update":

            if self.request.get("date") == "" or user_id == "":
                self.redirect("/editprofile")
                return

            myuser = Services().get_login_user()

            user_first_name = self.request.get("user_first_name")
            user_last_name = self.request.get("user_last_name")
            dob = datetime.strptime(self.request.get("date"), '%Y-%m-%d')

            myuser.first_name = user_first_name
            myuser.last_name = user_last_name
            myuser.dob = dob
            myuser.put()

            self.redirect("/")

        elif self.request.get("follow_user") == "Follow" or self.request.get(
                "follow_user") == "Unfollow":

            myuser = Services().get_login_user()

            if self.request.get("follow_user") == "Follow":
                myuser.user_following.append(user_id)

            else:
                user_following = myuser.user_following
                user_following.remove(user_id)
                myuser.user_following = user_following

            myuser.put()
            self.redirect("/editprofile?user_id={}".format(user_id))

        if self.request.get("cancel"):
            self.redirect("/")
 def __init__(self, driver):
     self.driver = driver
     self.services = Services(self.driver)
     self.createapp_xpath = '// *[ @ id = "link-create"]'
     self.start_xpath = '//*[@id="intro-dialog-cont"]/div[2]/button'
     self.newpage_xpath = '//*[@id="add-page"]'
     self.entername_xpath = '//*[@id="create-dialog"]/form/p/input'
     self.text = "TEST"
     self.createbutton_xpath = '/html/body/div[20]/div[3]/button[1]'
     self.clicknewpage_xpath = '//*[@id="accordion"]/h3[4]/a'
Esempio n. 21
0
    def get(self):

        self.response.headers["Content-Type"] = "text/html"

        inputed_word = self.request.GET.get("input_word")

        sorted_key = Services().sorted_key(word=inputed_word)
        list_sorted_keys = []

        anagram_query = Anagram.query(
            Anagram.user_id == Services().get_current_user_id())

        possible_combination_key = Services().possibleAllCountPermutations(
            text=sorted_key)
        anagram_models = []

        for word in possible_combination_key:

            query = anagram_query.filter(Anagram.anagram_key == word).fetch(
                projection=[Anagram.inputed_words])
            if len(query) > 0:

                for anagram in query:
                    anagram_models.extend(anagram.inputed_words)

        dictionary_words = {}
        for word in anagram_models:

            if len(word) in dictionary_words:
                dict_words = dictionary_words[len(word)]
                dict_words.append(word)
                dictionary_words[len(word)] = dict_words
            else:
                dictionary_words[len(word)] = [word]

        template_values = {
            "inputword": inputed_word,
            "dictionary_words": dictionary_words
        }

        template = JINJA_ENVIRONMENT.get_template("subanagram.html")
        self.response.write(template.render(template_values))
    def get(self):

        self.response.headers["Content-Type"] = "text/html"

        user = Services().get_current_user()
        word_model = Anagram.query()
        anagram_model = None

        if user:
            url = users.create_logout_url(self.request.uri)
            myuser_key = ndb.Key("MyUser", Services().get_current_user_id())
            myuser = myuser_key.get()

            if myuser == None:
                myuser = MyUser(id=user.user_id())
                myuser.put()

            anagram_query = Anagram.query(Anagram.user_id == Services().get_current_user_id())
            inputed_word = self.request.get("input_word").lower()


            if len(inputed_word) > 0:

                if self.request.GET.get("search") == "Search Word":

                    anagram_query = anagram_query.filter(Anagram.inputed_words.IN([inputed_word]))

            anagram_model = anagram_query.fetch()

        else:
            url = users.create_login_url(self.request.uri)


        template_values = {
            "url": url,
            "user": user,
            "anagram_model":anagram_model
        }

        template = JINJA_ENVIRONMENT.get_template("main.html")
        self.response.write(template.render(template_values))
Esempio n. 23
0
 def test_student(self):
     stud= StudentsRepo()
     assig= AssignmentRepo()
     grade= GradeRepo()
     serv=Services(stud,assig,grade)
     auxlist = serv.students.Get_list()
     serv.add_new_student("Filip",912)
     self.assertTrue(auxlist[0].get_name() == "Filip" and auxlist[0].get_group() == 912)
     serv.add_new_student("Adi",913) #TEST FOR THE ADD FUNCTION
     self.assertTrue(auxlist[1].get_name() == "Adi" and auxlist[1].get_group() == 913)
     serv.remove_the_students(913,None) # TEST FOR THE REMOVE FUNCTION
     self.assertTrue(auxlist[1] == None)
     serv.find_update_person(0,"Adi",914,"3")
     self.assertTrue(auxlist[0].get_name() == "Adi" and auxlist[0].get_group() == 914)
Esempio n. 24
0
 def test_assignment(self):
     stud = StudentsRepo()
     assig = AssignmentRepo()
     grade = GradeRepo()
     serv = Services(stud, assig, grade)
     auxlist = serv.assignments.Get_list()
     serv.add_new_assignment("Stay",12)
     self.assertTrue(auxlist[0].get_description() == "Stay" and auxlist[0].get_deadline() == 12)
     serv.add_new_assignment("Walk",9)
     self.assertTrue(auxlist[1].get_description() == "Walk" and auxlist[1].get_deadline() == 9)
     serv.remove_the_assignment("Walk",None)
     self.assertTrue(auxlist[1] == None)
     serv.find_update_assignment("1",0,"Eat",8)
     self.assertTrue(auxlist[0].get_description() == "Eat" and auxlist[0].get_deadline() == 12)
Esempio n. 25
0
    def post(self):

        blobinfo = None
        if len(self.get_uploads()) > 0:
            upload_file = self.get_uploads()[0]
            blobinfo = blobstore.BlobInfo(upload_file.key())

        share_text = self.request.get("share_text")
        share_type = self.request.get("share_type")

        if share_type == "Update":

            edit_tweet_id = self.request.get("edit_tweet_id")
            edit_tweet = Services().get_tweet(tweet_id=edit_tweet_id)
            edit_tweet.share_text = share_text
            edit_tweet.time = datetime.datetime.now()
            if blobinfo != None:
                edit_tweet.avatar = upload_file.key()
            edit_tweet.put()

        else:

            myuser = Services().get_login_user()
            tweet = Tweet(share_text=share_text,
                          user_id=myuser.key.id(),
                          user_name=myuser.user_name,
                          time=datetime.datetime.now())

            if blobinfo != None:
                tweet.avatar = upload_file.key()
            tweet.put()

            myuser.tweet_ids.append(tweet.key.id())
            myuser.put()

        self.redirect("/")
Esempio n. 26
0
def run_add_test():
    expenses = []
    services = Services(expenses)

    try:
        services.add(["", "", ""])
        assert False
    except:
        assert True
    assert len(expenses) == 0
    
    try:
        services.add(["abc", "abc", "abc"])
        assert False
    except:
        assert True
    assert len(expenses) == 0

    try:
        services.add(["0", "0", "abc"])
        assert False
    except:
        assert True
    assert len(expenses) == 0

    try:
        services.add(["32", "abc", "abc"])
        assert False
    except:
        assert True
    assert len(expenses) == 0

    try:
        services.add(["30", "abc", "abc"])
        assert False
    except:
        assert True
    assert len(expenses) == 0

    services.add(["28", "64", "food"])
    assert len(expenses) == 1

    expense = expenses[0]
    assert expense.cost == 64
    assert expense.category == "food"
    assert expense.day == 28
Esempio n. 27
0
def index():
    s = Services('http://www.ipma.pt')
    placeRef = flask.request.args.get('placeRef')
    if placeRef:
        w = s.get_place_weather(1)
        if w is None:
            flask.abort(404)  # not found
        else:
            selectedPlace = PlaceWeather("some-description", w)
    else:
        selectedPlace = None

    places = Services.placeMap.values()
    rvalue = flask.render_template('index.jinja',
                                   places=places,
                                   selectedPlace=selectedPlace)
    return rvalue
Esempio n. 28
0
    def test_search(self):
        services = Services()
        repo = services.repository

        services.add(["student", "1", "stud 1"])
        services.add(["student", "2", "stud 2"])
        services.add(["discipline", "1", "discipline"])

        self.assertEqual(repo.get_students_count(), 2)
        self.assertEqual(repo.get_disciplines_count(), 1)

        self.assertRaises(Exception, lambda: services.search([]))
        self.assertRaises(Exception, lambda: services.search([""]))
        self.assertRaises(Exception, lambda: services.search(["magic"]))

        self.assertNotIn('|', services.search(["stud"]))
        self.assertIn('|', services.search(["1"]))
Esempio n. 29
0
    def __init__(self, templatelookup, test, filedir):
        self.templatelookup = templatelookup
        self.test = test
        # Allocate objects for all of the control panel's main features.
        self.traffic = NetworkTraffic(filedir, templatelookup)
        self.network = NetworkConfiguration(templatelookup, test)
        self.mesh = MeshConfiguration(templatelookup, test)
        self.services = Services(templatelookup, test)
        self.gateways = Gateways(templatelookup, test)

        # Location of the network.sqlite database, which holds the configuration
        # of every network interface in the node.
        if test:
            # self.netconfdb = '/home/drwho/network.sqlite'
            self.netconfdb = 'var/db/controlpanel/network.sqlite'
            logging.debug("Location of NetworkConfiguration.netconfdb: %s", self.netconfdb)
        else:
            self.netconfdb = '/var/db/controlpanel/network.sqlite'
Esempio n. 30
0
def setup():
    """Setup the main application and the web server tree.

    Steps:
        1. Set global Engine configuration.
        2. Mount the applications on the tree.
        3. Set additional configuration for services app.

    Note that HTTP configuration is set when importing from lib.
    """
    confDir = os.path.join(APP_DIR, 'etc')

    engineConfPath = os.path.join(confDir, 'engine.conf')

    rootApp = cherrypy.tree.mount(Root(), '/', config=engineConfPath)
    servicesApp = cherrypy.tree.mount(Services(), '/services')

    for s in ['services.conf', 'services.local.conf']:
        sPath = os.path.join(confDir, s)
        if os.access(sPath, os.R_OK):
            servicesApp.merge(sPath)