Exemple #1
0
        public static ProvisioningService Create(RouteData routeData, string firstName, string lastName, string serviceName = "Example Simple Service")
        {
            var coreService = AtomiaServiceChannelManager.GetCoreService(false);
            var accountId   = routeData.Values["accountId"].ToString();
            var fetchedProvisioningDescriptionID = AtomiaServicesManager.FetchProvisioningDescriptionID(accountId);
            var serviceData = AtomiaServicesManager.FetchServiceData(
                serviceName,
                fetchedProvisioningDescriptionID,
                routeData.DataTokens["area"].ToString(),
                routeData.Values["controller"].ToString(),
                routeData.Values["action"].ToString());
            var baseService = GetRootService(routeData);

            if (null == baseService)
            {
                return(null);
            }

            var newService = coreService.CreateService(serviceData.ServiceName, baseService, accountId);

            newService.properties.Single(p => p.Name == serviceData.ServiceProperties["FirstName"]).propStringValue = firstName;
            newService.properties.Single(p => p.Name == serviceData.ServiceProperties["LastName"]).propStringValue  = lastName;

            return(coreService.AddService(newService, baseService, accountId, null));
        }
Exemple #2
0
        public static Models.ExampleModel GetServiceModel(RouteData routeData, string serviceName = "Example Simple Service")
        {
            var simpleService = GetService(routeData);

            if (null == simpleService)
            {
                return(null);
            }

            var accountId = routeData.Values["accountId"].ToString();
            var fetchedProvisioningDescriptionID = AtomiaServicesManager.FetchProvisioningDescriptionID(accountId);
            var serviceData = AtomiaServicesManager.FetchServiceData(
                serviceName,
                fetchedProvisioningDescriptionID,
                routeData.DataTokens["area"].ToString(),
                routeData.Values["controller"].ToString(),
                routeData.Values["action"].ToString());

            return(new Models.ExampleModel
            {
                AccountId = simpleService.properties.FirstOrDefault(p => p.Name == serviceData.ServiceProperties["AccountId"]).propStringValue,
                FirstName = simpleService.properties.FirstOrDefault(p => p.Name == serviceData.ServiceProperties["FirstName"]).propStringValue,
                LastName = simpleService.properties.FirstOrDefault(p => p.Name == serviceData.ServiceProperties["LastName"]).propStringValue,
                Number = simpleService.properties.FirstOrDefault(p => p.Name == serviceData.ServiceProperties["Number"]).propStringValue
            });
        }
Exemple #3
0
        public static ProvisioningService GetService(RouteData routeData, string serviceName = "Example Simple Service")
        {
            var coreService = AtomiaServiceChannelManager.GetCoreService(false);
            var accountId   = routeData.Values["accountId"].ToString();
            var fetchedProvisioningDescriptionID = AtomiaServicesManager.FetchProvisioningDescriptionID(accountId);
            var serviceData = AtomiaServicesManager.FetchServiceData(
                serviceName,
                fetchedProvisioningDescriptionID,
                routeData.DataTokens["area"].ToString(),
                routeData.Values["controller"].ToString(),
                routeData.Values["action"].ToString());
            var baseService = GetRootService(routeData);
            ProvisioningService simpleService = null;

            if (baseService != null)
            {
                var servicesList = SearchServices(coreService, baseService, serviceData.ServiceName, accountId, serviceData.Path);

                if (servicesList != null && servicesList.Length > 0)
                {
                    simpleService = servicesList[0];
                }
            }

            return(simpleService);
        }
Exemple #4
0
 private static AtomiaServices GetServiceData(
     RouteData routeData,
     string fetchedProvisioningDescriptionID,
     string serviceName = "Example Simple Service")
 {
     return(AtomiaServicesManager.FetchServiceData(
                serviceName,
                fetchedProvisioningDescriptionID,
                routeData.DataTokens["area"].ToString(),
                routeData.Values["controller"].ToString(),
                routeData.Values["action"].ToString()));
 }
Exemple #5
0
        public ExampleManager(Controller controller)
        {
            var routeData      = controller.RouteData;
            var area           = routeData.DataTokens["area"].ToString();
            var controllerName = routeData.DataTokens["controller"].ToString();
            var action         = routeData.DataTokens["action"].ToString();

            this.controller = controller;
            coreApi         = AtomiaServiceChannelManager.GetCoreService();
            accountId       = routeData.Values["accountID"].ToString();
            serviceId       = routeData.Values["serviceID"].ToString();

            var provisioningDescriptionId = AtomiaServicesManager.FetchProvisioningDescriptionID(accountId);

            exampleServiceData = AtomiaServicesManager.FetchServiceData("Example Complex Service", provisioningDescriptionId, area, controllerName, action);
            csBaseServiceData  = AtomiaServicesManager.FetchServiceData("Hosting Complex Service", provisioningDescriptionId, area, controllerName, action);
        }
Exemple #6
0
        private static ProvisioningService GetRootService(RouteData routeData)
        {
            var coreService = AtomiaServiceChannelManager.GetCoreService(false);
            var fetchedProvisioningDescriptionID = AtomiaServicesManager.FetchProvisioningDescriptionID(routeData.Values["accountID"].ToString());
            var fetchedRootFolderServiceData     = AtomiaServicesManager.FetchServiceData(
                "Hosting Complex Service",
                fetchedProvisioningDescriptionID,
                routeData.DataTokens["area"].ToString(),
                routeData.Values["controller"].ToString(),
                routeData.Values["action"].ToString());
            var serviceSearchCriteria = new[]
            {
                new ServiceSearchCriteria
                {
                    ParentService = null,
                    ServicePath   = fetchedRootFolderServiceData.Path,
                    ServiceName   = fetchedRootFolderServiceData.ServiceName
                }
            };
            var fetchedServices = coreService.FindServicesByPath(serviceSearchCriteria, null, routeData.Values["accountID"].ToString(), "", true);

            return(fetchedServices.FirstOrDefault());
        }