掌中通.apk(点击下载) / SessionLifecycleAdapter.java


package com.alibaba.cchannel.session.plugin.lifecycle;

import com.alibaba.cchannel.CloudChannelConstants;
import com.alibaba.cchannel.CloudChannelEnv;
import com.alibaba.cchannel.session.plugin.SessionContext;
import com.alibaba.cchannel.session.plugin.SessionService;
import com.alibaba.cchannel.session.plugin.impl.SessionServiceImpl;
import com.alibaba.sdk.android.ConfigManager;
import com.alibaba.sdk.android.app.AppContext;
import com.alibaba.sdk.android.plugin.PluginContext;
import com.alibaba.sdk.android.plugin.PluginLifecycleAdapter;
import com.alibaba.sdk.android.plugin.config.PluginConfigurations;

public class SessionLifecycleAdapter implements PluginLifecycleAdapter {
    @Override // com.alibaba.sdk.android.plugin.PluginLifecycleAdapter
    public void start(AppContext appContext, PluginContext pluginContext) {
        SessionContext.appContext = appContext;
        PluginConfigurations pluginConfigurations = pluginContext.getPluginConfigurations();
        String name = appContext.getEnvironment().name();
        SessionContext.topGateWayUrl = pluginConfigurations.getStringValue(name + "_TOP_GATEWAY_URL");
        SessionContext.rpcKeyOfConfigFetchUrl = pluginConfigurations.getStringValue(name + "_RPC_KEY_OF_CONFIG_FETCH_URL", CloudChannelConstants.CONFIG_FETCH_URL);
        SessionContext.rpcKeyOfRpcHttpGateway = pluginConfigurations.getStringValue(name + "_RPC_KEY_OF_RPC_HTTP_GATEWAY", CloudChannelConstants.RPC_HTTP_GATEWAY);
        SessionContext.rpcKeyOfSidFetchUrl = pluginConfigurations.getStringValue(name + "_RPC_KEY_OF_SID_FETCH_URL", "http://manager.channel.aliyun.com/sid.htm");
        SessionContext.domains = new String[][]{new String[]{".taobao.com", ".tmall.com", ".tmall.hk"}, new String[]{".taobao.com", ".tmall.com", ".tmall.hk"}, new String[]{".taobao.com", ".tmall.com", ".tmall.hk"}, new String[]{".tbsandbox.com"}}[appContext.getEnvironment().ordinal()];
        SessionContext.refreshTokenUrl = "http://" + ConfigManager.INIT_SERVER_HOST + "/rs.htm";
        SessionContext.logoutUrl = "http://" + ConfigManager.INIT_SERVER_HOST + "/logout.htm";
        if ("ONLINE".equals(appContext.getEnvironment().name())) {
            CloudChannelConstants.ENV = CloudChannelEnv.ONLINE;
        } else if ("TEST".equals(appContext.getEnvironment().name())) {
            CloudChannelConstants.ENV = CloudChannelEnv.TEST;
        } else if ("PRE".equals(appContext.getEnvironment().name())) {
            CloudChannelConstants.ENV = CloudChannelEnv.PRE;
        } else if ("SANDBOX".equals(appContext.getEnvironment().name())) {
            CloudChannelConstants.ENV = CloudChannelEnv.SANDBOX;
        }
        SessionServiceImpl sessionServiceImpl = new SessionServiceImpl();
        sessionServiceImpl.init();
        appContext.registerService(new Class[]{SessionService.class}, sessionServiceImpl, null);
    }

    @Override // com.alibaba.sdk.android.plugin.PluginLifecycleAdapter
    public void stop(AppContext appContext, PluginContext pluginContext) {
    }
}