import file_utils
import common_utils
import os.path

def execute(game, sdk, config):
    if not checkConfig(config):
        return 1

    subChannel = config['subChannel']

    createJmhyProperties(game, sdk, subChannel, config)
    
    common_utils.changeApplication(game, sdk, subChannel, config, 'com.shanshen.sdk.common.ShanShenApplication')
    return 0

def checkConfig(config):
    '''
    检查配置
    '''
    if 'properties' not in config:
        print('properties not exists in config')
        return False

    properties = config['properties']
    
    if 'agent' not in properties or 'version' not in properties:
        print('agent or version not exists in properties')
        return False

    '''if 'appid' not in config or 'appkey' not in config:
        print('appid or appkey not exists in config')
        return False'''

    return True

def createJmhyProperties(game, sdk, subChannel, config):
    '''
    创建jmhy.properties
    '''
    print('create shanshen.properties')
    propValue = config['properties']
    decompliePath = file_utils.getDecompliePath(game, sdk, subChannel, config['cache'])
    properties = os.path.join(decompliePath, 'assets', 'shanshen.properties')
    content = ''
    for key in propValue:
        content = '%s%s=%s\n' % (content, key, propValue[key])
    file_utils.createFile(properties, content)
    return 0