-
Notifications
You must be signed in to change notification settings - Fork 0
/
ControllerStub.py
40 lines (33 loc) · 1.19 KB
/
ControllerStub.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from Matcher import Matcher
from ResumeProcessor import ResumeProcessor
from FacadeStub import FacadeStub
from ResumeNode import ResumeNode
from JobDescNode import JobDescNode
from ScorerStub import ScorerStub
from Scorer import Scorer
import json, re
import jsonpickle
def openFile(eFile):
with open(eFile, encoding='utf-8') as inFile:
return json.load(inFile)
class ControllerStub(object):
def __init__(self):
self.facade = FacadeStub()
self.matcher = Matcher(self.facade)
def process(self, resume, job, keyword):
resumeNode = ResumeNode("name", "999", "email@email.com", "0", resume)
jobNode = JobDescNode("0", job, keyword)
ResumeProcessor.construct(resumeNode)
ResumeProcessor.construct(jobNode)
self.facade.storeJob(jobNode)
self.facade.storeResume(resumeNode)
self.matcher.matchAll(0)
def getResults(self):
scorer = Scorer(self.facade)
scorer.calculateScore()
main = ControllerStub()
resumeFile = openFile('data\\input\\resume3.json')
jobFile = openFile('data\\input\\jobdesc3.json')
keywordFile = openFile('data\\keywords.json')
main.process(resumeFile, jobFile, keywordFile)
main.getResults()