Esempio n. 1
0
// ReSharper disable PossibleMultipleEnumeration
        public async Task RunAsync(IRestContext context)
        {
            ISystemApi systemApi = context.Factory.CreateSystemApi();

            // Read
            SqlQuery query = new SqlQuery {
                fields = "*", related = "services,roles",
            };
            IEnumerable <AppResponse> apps = await systemApi.GetAppsAsync(query);

            Console.WriteLine("Apps: {0}", apps.Select(x => x.api_name).ToStringList());

            // Cloning
            AppResponse todoApp        = apps.Single(x => x.api_name == "todoangular");
            AppRequest  todoAppRequest = todoApp.Convert <AppResponse, AppRequest>();

            todoAppRequest.name     = todoApp.name + "clone";
            todoAppRequest.api_name = todoApp.api_name + "clone";

            // Creating a clone
            apps = await systemApi.CreateAppsAsync(new SqlQuery(), todoAppRequest);

            AppResponse todoAppClone = apps.Single(x => x.api_name == "todoangularclone");

            Console.WriteLine("Created a clone app={0}", todoAppClone.api_name);

            // Deleting the clone
            Debug.Assert(todoAppClone.id.HasValue);
            await systemApi.DeleteAppsAsync(true, todoAppClone.id.Value);

            Console.WriteLine("Created clone has been deleted");
        }
Esempio n. 2
0
        public async Task RunAsync(IRestContext context)
        {
            ISystemAppApi appApi = context.Factory.CreateSystemAppApi();

            // Read
            SqlQuery query = new SqlQuery {
                Fields  = "*",
                Related = String.Join(",", RelatedResources.App.StorageService, RelatedResources.App.Roles)
            };
            IEnumerable <AppResponse> apps = (await appApi.GetAppsAsync(query)).ToList();

            Console.WriteLine("Apps:");
            foreach (AppResponse app in apps)
            {
                Console.WriteLine("\tName: {0}, ApiKey: {1}", app.Name, app.ApiKey);
            }

            // Cloning
            AppResponse adminApp        = apps.Single(x => x.Name == "admin");
            AppRequest  adminAppRequest = adminApp.Convert <AppResponse, AppRequest>();

            adminAppRequest.Id   = null;
            adminAppRequest.Name = adminApp.Name + "clone";

            // Creating a clone
            apps = await appApi.CreateAppsAsync(new SqlQuery(), adminAppRequest);

            AppResponse adminAppClone = apps.Single(x => x.Name == "adminclone");

            Console.WriteLine("Created a clone app Name:{0}, ApiKey:{1}", adminAppClone.Name, adminAppClone.ApiKey);

            // Deleting the clone
            Debug.Assert(adminAppClone.Id.HasValue);
            await appApi.DeleteAppsAsync(new SqlQuery(), adminAppClone.Id.Value);

            Console.WriteLine("Created clone has been deleted");
        }