提交 62760066 编写于 作者: J jinhai

Update for storage


Former-commit-id: 42039c22af7c1a141894fa9d214c8b43c7f25847
上级 61f832bc
......@@ -10,14 +10,15 @@ class MetaManager(object):
def AddGroup(self, group_name, dimension):
group = GroupTable.query.filter(GroupTable.group_name==group_id).first()
if group:
return ErrorCode.ALREADY_EXIST, group_name, group_filenumber
return ErrorCode.ALREADY_EXIST, group_name
else:
new_group = GroupTable(group_name, dimension)
GroupHandler.CreateGroupDirectory(group_id)
# add into database
db.session.add(new_group)
return ErrorCode.SUCCESS_CODE, group_name, 0
self.Sync()
return ErrorCode.SUCCESS_CODE, group_name
@staticmethod
def GetGroup(group_name):
......
import os, shutil
from engine.settings import DATABASE_DIRECTORY
class StorageManager(object):
@staticmethod
def CreateGroup(group_name):
path = StorageManager.GetGroupDirectory(group_name)
path = path.strip()
path=path.rstrip("\\")
if not os.path.exists(path):
os.makedirs(path)
@staticmethod
def GetGroupDirectory(group_name):
return DATABASE_DIRECTORY + '/' + group_name
def Read():
pass
def Write():
pass
......@@ -27,10 +27,9 @@ class TestVectorEngine:
assert file_number == 0
# Add a group
code, group_id, file_number = VectorEngine.AddGroup('test_group', 8)
code, group_id = VectorEngine.AddGroup('test_group', 8)
assert code == VectorEngine.SUCCESS_CODE
assert group_id == 'test_group'
assert file_number == 0
# Check the group existing
code, group_id, file_number = VectorEngine.GetGroup('test_group')
......
......@@ -11,6 +11,7 @@ from engine.controller.scheduler import Scheduler
from engine.ingestion import serialize
from engine.controller.meta_manager import MetaManager
from engine.controller.error_code import ErrorCode
from engine.controller.storage_manager import StorageManager
import sys, os
class VectorEngine(object):
......@@ -24,15 +25,15 @@ class VectorEngine(object):
def AddGroup(group_name, dimension):
error, group = MetaManager.GetGroup(group_name)
if(error == ErrorCode.SUCCESS_CODE):
return ErrorCode.FAULT_CODE, group_name, group.file_number
return ErrorCode.FAULT_CODE, group_name
else:
StorageManager.CreateGroup(group_name)
new_group = GroupTable(group_name, dimension)
GroupHandler.CreateGroupDirectory(group_name)
# add into database
db.session.add(new_group)
db.session.commit()
return VectorEngine.SUCCESS_CODE, group_name, 0
return VectorEngine.SUCCESS_CODE, group_name
@staticmethod
......
......@@ -59,16 +59,16 @@ class Group(Resource):
def post(self, group_id):
args = self.__parser.parse_args()
dimension = args['dimension']
code, group_id, file_number = VectorEngine.AddGroup(group_id, dimension)
return jsonify({'code': code, 'group': group_id, 'filenumber': file_number})
code, group_id = VectorEngine.AddGroup(group_id, dimension)
return jsonify({'code': code, 'group': group_id, 'filenumber': 0})
def get(self, group_id):
code, group_id, file_number = VectorEngine.GetGroup(group_id)
return jsonify({'code': code, 'group': group_id, 'filenumber': file_number})
return jsonify({'code': code, 'group': group_id, 'filenumber': 0})
def delete(self, group_id):
code, group_id, file_number = VectorEngine.DeleteGroup(group_id)
return jsonify({'code': code, 'group': group_id, 'filenumber': file_number})
return jsonify({'code': code, 'group': group_id, 'filenumber': 0})
class GroupList(Resource):
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册