Esempio n. 1
0
 def createUser():
     try:
         global service, response
         logger.info('Calling createUser')
         data = request.json
         user = User(username=data.get('username'),
                     user_type=data.get('user_type'),
                     name=data['user_details']['name'],
                     dob=data['user_details']['dob'],
                     email=data['user_details']['email'],
                     gender=data['user_details']['gender'],
                     street=data['user_details']['address']['street'],
                     province=data['user_details']['address']['province'],
                     country=data['user_details']['address']['country'],
                     phonenumber=data['user_details']['phonenumber'])
         dashboard = Dashboard(
             total_visits=data['dashboard']['total_visits'],
             cancelled_visits=data['dashboard']['cancelled_visits'],
             upcoming_visits=data['dashboard']['upcoming_visits'],
             bookings_history=data.get('bookings_history'),
             messages=data['dashboard']['messages'])
         if (data.get('user_type') == 'store_owner'):
             store = Store(
                 name=data['store_details']['name'],
                 establishedon=data['store_details']['establishedon'],
                 email=data['store_details']['email'],
                 size=data['store_details']['size'],
                 street=data['store_details']['street'],
                 province=data['store_details']['province'],
                 country=data['store_details']['country'],
                 phonenumber=data['store_details']['phonenumber'])
             response = service.handleService(user, dashboard, store)
         response = service.handleService(user, dashboard)
         if (response != ""):
             return 'User created'
         else:
             return 'User not created'
     except (Exception) as e:
         return e.response
Esempio n. 2
0
def collect_raw_data(src_path,
                     src_extension,
                     dst_extension,
                     is_webshell=True,
                     check_format=None):
    '''
    transform file to train_set, with sha256sum 
    :param src_path: raw data file path
    :param src_extension: string or list, raw data extension 
    :param dst_extension: string, dst file extension
    :param check_format: check file format or not, eg. php, jsp, .net, py, rube
    :return: 
    '''

    if dst_extension not in global_extens:
        raise Exception('dst extension error, must be one of %s' %
                        str(global_extens))
    extens = src_extension if isinstance(src_extension,
                                         list) else src_extension.split(' ')
    cur_path = os.path.split(os.path.realpath(__file__))[0]
    dst_path = os.path.abspath(
        os.path.join(cur_path, os.path.pardir, 'train_set'))
    fs = [
        os.path.join(root, f) for (root, dirs, files) in os.walk(src_path)
        for f in files
    ]
    fs = [f for e in extens for f in fs if f.endswith(e)]
    num = len(fs)
    for f in fs:
        sha256 = hashlib.sha256(open(f, 'rb').read()).hexdigest()
        dst_file = os.path.join(dst_path, dst_extension[1:]+'_webshell', sha256+dst_extension) \
            if is_webshell else os.path.join(dst_path, dst_extension[1:]+'_normal', sha256+dst_extension)
        if os.path.isfile(dst_file):
            num = num - 1
        else:
            shutil.copy(f, dst_file)
    logger.info('add %d webshell/files' % num)
 def handleService(self, user, dashboard, *store):
     if (db_type == 'sqlLite'):
         logger.info('sqlLite')
     elif (db_type == 'postgresql'):
         logger.info('postgresql')
     elif (db_type == 'mysql'):
         logger.info('mysql')
     elif (db_type == 'mangodb'):
         logger.info('mangodb')
     elif (db_type == 'dynamodb'):
         try:
             logger.info('dynamodb')
             global dao, dynamodb
             response = dao.dataAccess(user, dashboard, dynamodb)
             return response
         except (Exception) as e:
             raise
     elif (db_type == 'rds'):
         logger.info('')
     elif (db_type == 'dynamodb'):
         logger.info('dynamodb')
import os
from utility.logger import logger
from src.repositories.aws.dynamodb.dynamodb import Dynamodb
from src.dao import Dao

logger = logger()
db_type = os.getenv('DB_TYPE')
logger.info(db_type)

dao = None
dynamodb = None


class Service:
    def __init__(self):
        global dao, dynamodb
        dao = Dao()
        dynamodb = Dynamodb()

    def handleService(self, user, dashboard, *store):
        if (db_type == 'sqlLite'):
            logger.info('sqlLite')
        elif (db_type == 'postgresql'):
            logger.info('postgresql')
        elif (db_type == 'mysql'):
            logger.info('mysql')
        elif (db_type == 'mangodb'):
            logger.info('mangodb')
        elif (db_type == 'dynamodb'):
            try:
                logger.info('dynamodb')
Esempio n. 5
0
 def dataAccess(self, user, dashboard, repository, *store):
     if (db_type == 'sqlLite'):
         logger.info('sqlLite')
     elif (db_type == 'postgresql'):
         logger.info('postgresql')
     elif (db_type == 'mysql'):
         logger.info('mysql')
     elif (db_type == 'mangodb'):
         logger.info('mangodb')
     elif (db_type == 'dynamodb'):
         try:
             logger.info('dynamodb')
             item = {
                 'pk': getattr(user, 'username'),
                 'sk': getattr(user, 'user_type'),
                 'type': 'user',
                 'user_details': user.getUserDetails(),
                 'dashboard': dashboard.getDashboard()
             }
             if getattr(user, 'user_type') == "shopper":
                 booking_history = getattr(dashboard, 'bookings_history')
                 item.update({'booking_history': booking_history})
             elif getattr(user, 'user_type') == "store_owner":
                 store_details = store.getStoreDetails()
                 messages = getattr(user, 'messages')
                 item.update({
                     'store_details': store_details,
                     'messages': messages
                 })
             response = repository.newItem(item)
             return response
         except (Exception) as e:
             raise
     elif (db_type == 'rds'):
         logger.info('')
     elif (db_type == 'dynamodb'):
         logger.info('dynamodb')
Esempio n. 6
0
 def uploadImage():
     logger.info('Calling uploadImage')
     return 'Hello, World!'
Esempio n. 7
0
 def getStores():
     logger.info('Calling getStores')
     return 'Hello, World!'
Esempio n. 8
0
 def getUsers():
     logger.info('Calling getUsers')
     return 'Hello, World!'
Esempio n. 9
0
 def updateRecord():
     logger.info('Calling updateRecord')
     return 'Hello, World!'
Esempio n. 10
0
 def deleteUser():
     logger.info('Calling deleteUser')
     return 'Hello, World!'
Esempio n. 11
0
 def fetchImage():
     logger.info('Calling fetchImage')
     return 'Hello, World!'