internal static async Task<IGatewayListProvider> CreateGatewayListProvider(ClientConfiguration cfg)
        {
            IGatewayListProvider listProvider = null;
            ClientConfiguration.GatewayProviderType gatewayProviderToUse = cfg.GatewayProviderToUse;

            switch (gatewayProviderToUse)
            {
                case ClientConfiguration.GatewayProviderType.AzureTable:
                    listProvider = AssemblyLoader.LoadAndCreateInstance<IGatewayListProvider>(Constants.ORLEANS_AZURE_UTILS_DLL, logger);
                    break;

                case ClientConfiguration.GatewayProviderType.SqlServer:
                    listProvider = AssemblyLoader.LoadAndCreateInstance<IGatewayListProvider>(Constants.ORLEANS_SQL_UTILS_DLL, logger);
                    break;

                case ClientConfiguration.GatewayProviderType.Custom:
                    listProvider = AssemblyLoader.LoadAndCreateInstance<IGatewayListProvider>(cfg.CustomGatewayProviderAssemblyName, logger);
                    break;

                case ClientConfiguration.GatewayProviderType.ZooKeeper:
                    listProvider = AssemblyLoader.LoadAndCreateInstance<IGatewayListProvider>(Constants.ORLEANS_ZOOKEEPER_UTILS_DLL, logger);
                    break;

                case ClientConfiguration.GatewayProviderType.Config:
                    listProvider = new StaticGatewayListProvider();
                    break;

                default:
                    throw new NotImplementedException(gatewayProviderToUse.ToString());
            }

            await listProvider.InitializeGatewayListProvider(cfg, LogManager.GetLogger(listProvider.GetType().Name));
            return listProvider;
        }
        internal IGatewayListProvider CreateGatewayListProvider()
        {
            IGatewayListProvider listProvider;

            ClientConfiguration.GatewayProviderType gatewayProviderToUse = cfg.GatewayProviderToUse;

            switch (gatewayProviderToUse)
            {
            case ClientConfiguration.GatewayProviderType.AzureTable:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(Constants.ORLEANS_AZURE_UTILS_DLL, logger, this.serviceProvider);
                break;

            case ClientConfiguration.GatewayProviderType.SqlServer:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(Constants.ORLEANS_SQL_UTILS_DLL, logger, this.serviceProvider);
                break;

            case ClientConfiguration.GatewayProviderType.Custom:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(cfg.CustomGatewayProviderAssemblyName, logger, this.serviceProvider);
                break;

            case ClientConfiguration.GatewayProviderType.ZooKeeper:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(Constants.ORLEANS_ZOOKEEPER_UTILS_DLL, logger, this.serviceProvider);
                break;

            case ClientConfiguration.GatewayProviderType.Config:
                listProvider = new StaticGatewayListProvider();
                break;

            default:
                throw new NotImplementedException(gatewayProviderToUse.ToString());
            }

            return(listProvider);
        }
Beispiel #3
0
        internal static async Task <IGatewayListProvider> CreateGatewayListProvider(ClientConfiguration cfg)
        {
            IGatewayListProvider listProvider = null;

            ClientConfiguration.GatewayProviderType gatewayProviderToUse = cfg.GatewayProviderToUse;

            switch (gatewayProviderToUse)
            {
            case ClientConfiguration.GatewayProviderType.AzureTable:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(Constants.ORLEANS_AZURE_UTILS_DLL, logger);
                break;

            case ClientConfiguration.GatewayProviderType.SqlServer:
                listProvider = new SqlMembershipTable();
                break;

            case ClientConfiguration.GatewayProviderType.ZooKeeper:
                listProvider = AssemblyLoader.LoadAndCreateInstance <IGatewayListProvider>(Constants.ORLEANS_ZOOKEEPER_UTILS_DLL, logger);
                break;

            case ClientConfiguration.GatewayProviderType.Config:
                listProvider = new StaticGatewayListProvider();
                break;

            default:
                throw new NotImplementedException(gatewayProviderToUse.ToString());
            }

            await listProvider.InitializeGatewayListProvider(cfg, TraceLogger.GetLogger(listProvider.GetType().Name));

            return(listProvider);
        }
Beispiel #4
0
        internal static async Task <IGatewayListProvider> CreateGatewayListProvider(ClientConfiguration cfg)
        {
            IGatewayListProvider listProvider = null;

            ClientConfiguration.GatewayProviderType gatewayProviderToUse = cfg.GatewayProviderToUse;

            switch (gatewayProviderToUse)
            {
            case ClientConfiguration.GatewayProviderType.AzureTable:
                listProvider = await AzureGatewayListProvider.GetAzureGatewayListProvider(cfg);

                break;

            case ClientConfiguration.GatewayProviderType.SqlServer:
                listProvider = new SqlMembershipTable(cfg);
                break;

            case ClientConfiguration.GatewayProviderType.Config:
                listProvider = new StaticGatewayListProvider(cfg);
                break;
            }
            return(listProvider);
        }