コード例 #1
0
ファイル: routes.py プロジェクト: tskim218/Anagrams
def anagramsOps(word):
    global dictWords

    ## Endpoint to delete a word *and all of its anagrams*
    if request.method == 'DELETE':
        with rpcProxy('delete_service') as deleteRpc:
            semaphore.acquire()
            dictWords = deleteRpc.deleteAnagrms(word, dictWords)
            semaphore.release()

        return '', 204

    else:  ####  request.method == 'GET':
        with rpcProxy('fetch_service') as fetchRpc:
            result = ""

            if 'size' in request.args:
                semaphore.acquire()
                result = fetchRpc.fetchAnagramSize(request.args.get('size'), dictWords)
                semaphore.release()

            ## Endpoint that identifies words with the most anagrams
            elif word.lower() == 'most':
                semaphore.acquire()
                result = fetchRpc.fetchMostAnagrmas(dictWords)
                semaphore.release()

            else:  ##if 'limit' in request.args:
                semaphore.acquire()
                result = fetchRpc.fetchAnagramLimit(request.args.get('limit'), word, dictWords)
                semaphore.release()

            return jsonify(result), 200
コード例 #2
0
ファイル: routes.py プロジェクト: tskim218/Anagrams
def anagramsChkOps():
    global dictWords

    if request.method == 'POST':
        with rpcProxy('fetch_service') as fetchRpc:
            semaphore.acquire()
            result = fetchRpc.fetchIsAllAnagrms(request.get_json(force=True))
            semaphore.release()

        return jsonify(result), 201
コード例 #3
0
ファイル: routes.py プロジェクト: tskim218/Anagrams
def wordsOps(word):
    global dictWords

    if request.method == 'DELETE':
        with rpcProxy('delete_service') as deleteRpc:
            semaphore.acquire()
            dictWords = deleteRpc.deleteSingle(word, dictWords)
            semaphore.release()

        return '', 204

    ## check if a word exists in corups
    else: ####  request.method == 'GET':
        with rpcProxy('fetch_service') as fetchRpc:
            semaphore.acquire()
            result = fetchRpc.fetchWord(word, dictWords)
            semaphore.release()

        return jsonify(result), 200
コード例 #4
0
ファイル: routes.py プロジェクト: tskim218/Anagrams
def corpusOPs():
    global dictWords

    if request.method == 'POST':
        with rpcProxy('add_service') as addRpc:
            semaphore.acquire()
            result = addRpc.wordAddition(request.get_json(force=True), dictWords)
            semaphore.release()

            if isinstance(result, dict):
                dictWords = result

            return '', 201

    else:  #### request.method == 'DELETE':   
        with rpcProxy('delete_service') as deleteRpc:
            semaphore.acquire()
            dictWords = deleteRpc.deleteAllWords(dictWords)
            semaphore.release()

        return '', 204
コード例 #5
0
ファイル: routes.py プロジェクト: tskim218/Anagrams
def generalOps():
    global dictWords

    if request.method == 'GET':
        with rpcProxy('fetch_service') as fetchRpc:
            semaphore.acquire()
            result = fetchRpc.fetchStatics(dictWords)
            semaphore.release()

        return jsonify(result), 200

    return jsonify(""), 200