コード例 #1
0
        public void Test(ResourcesQueryParameters parameters, ResourcesResponse expectedResult)
        {
            using (var db = new TestDatabase())
            {
                InsertData(db.Db);
                var resourcesQuery = CreateResourcesQuery(db.Db);

                var result = resourcesQuery.Get(parameters);

                Assert.That(result, Is.EqualTo(expectedResult));
            }
        }
コード例 #2
0
        /// <summary>
        /// Return a swagger resources listing for this service.
        /// </summary>
        /// <param name="request">
        /// The request to list swagger resources.
        /// </param>
        /// <returns>
        /// A list of valid swagger endpoints on this service.
        /// </returns>
        public object Get(ResourcesRequest request)
        {
            var basePath = EndpointHost.Config.WebHostUrl;

            if (basePath == null)
            {
                basePath = EndpointHost.Config.UseHttpsLinks
                               ? this.Request.GetParentPathUrl().ToHttps()
                               : this.Request.GetParentPathUrl();
            }

            var result = new ResourcesResponse
            {
                SwaggerVersion = SwaggerFeature.SwaggerVersion,
                ApiVersion     = ApiVersion,
                BasePath       = basePath,
                Apis           = new List <RestService>()
            };
            var operations        = EndpointHost.Metadata;
            var allTypes          = operations.GetAllTypes();
            var allOperationNames = operations.GetAllOperationNames();

            foreach (var operationName in allOperationNames)
            {
                if (ResourceFilterRegex != null && !ResourceFilterRegex.IsMatch(operationName))
                {
                    continue;
                }

                var name          = operationName;
                var operationType = allTypes.FirstOrDefault(x => x.Name == name);
                if (operationType == null)
                {
                    continue;
                }

                if (operationType == typeof(ResourcesRequest) ||
                    operationType == typeof(ResourceRequest))
                {
                    continue;
                }

                if (!operations.IsVisible(this.Request, Format.Json, operationName))
                {
                    continue;
                }

                this.CreateRestPaths(result.Apis, operationType, operationName);
            }

            result.Apis = result.Apis.OrderBy(a => a.Path).ToList();
            return(result);
        }
コード例 #3
0
ファイル: ResourceService.cs プロジェクト: CobyC/JaRS
        /// <summary>
        /// Update or create a single resource or a list of resources, depending on whether the Resource or Resources property has got a value set.
        /// If the singular property is set a single record will be created or updated and the list of records will be ignored.
        /// To create or update more than one record, assign a list of values to the multiple property and make sure single value is set to nothing/null.
        /// </summary>
        /// <param name="request">The request containing the resource or resources that needs to be created or updated</param>
        /// <returns>depending on the values supplied, the updated single value or list of values will be returned.</returns>
        public virtual ResourcesResponse Any(StoreResources request)
        {
            //return ExecuteFaultHandledMethod(() =>
            //{
            ResourcesResponse response = new ResourcesResponse();
            //IResourceRepository _repository = _DataRepositoryFactory.GetDataRepository<IResourceRepository>();
            var _repository = _DataRepositoryFactory.GetDataRepository <IGenericEntityRepositoryBase <JarsResource, IDataContextNhJars> >();

            response.Resources = _repository.CreateUpdateList(request.Resources.ConvertAllTo <JarsResource>().ToList(), CurrentSessionUsername).ConvertAllTo <ResourceDto>().ToList();
            return(response);
            //});
        }
コード例 #4
0
        public async Task GetLogAnalyticsResources()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await subscription.GetResourceGroups().GetAsync("CdnTest");

            Profile afdProfile = await rg.GetProfiles().GetAsync("testAFDProfile");

            ResourcesResponse resourcesResponse = await afdProfile.GetLogAnalyticsResourcesAfdProfileAsync();

            Assert.AreEqual(resourcesResponse.CustomDomains.Count, 0);
            Assert.AreEqual(resourcesResponse.Endpoints.Count, 1);
        }
コード例 #5
0
ファイル: ResourceService.cs プロジェクト: CobyC/JaRS
        public ResourcesResponse Any(FindResources request)
        {
            //return ExecuteFaultHandledMethod(() =>
            //{
            ResourcesResponse response = new ResourcesResponse();
            var query = BuildQuery <JarsResource>(request);
            //var _repository = _DataRepositoryFactory.GetDataRepository<IResourceRepository>();
            var _repository = _DataRepositoryFactory.GetDataRepository <IGenericEntityRepositoryBase <JarsResource, IDataContextNhJars> >();
            var res         = _repository.Where(query, request.FetchEagerly).ToList();
            var resDto      = res.ConvertAllTo <ResourceDto>().ToList();

            response.Resources = resDto;

            return(response);
            // });
        }
コード例 #6
0
        public override async void OnRefreshDataAsync()
        {
            try
            {
                base.OnRefreshDataAsync();
                ResourcesResponse operativeResponse = await Context.ServiceClient.GetAsync(new FindResources()
                {
                    FetchEagerly = true
                });

                JarsRulesResponse conditionsResponse = await Context.ServiceClient.GetAsync(new FindJarsRules { TargetEntityTypeName = typeof(JarsResource).Name });

                defaultBindingSource.DataSource = operativeResponse.Resources.ConvertAll(r => r.ConvertTo <JarsResource>());
                ResourceEntityRulesList         = conditionsResponse.Rules.ToList <IJarsRule>().Where(r => r.TargetCriteriaString.Contains("[Id] = ")).ToList();
                UpdateLinkedBindingSources();
                FormEditState = FormEditStates.Browsing;
            }
            catch (Exception exR)
            {
                OnExceptionEvent(exR);
            }
        }
コード例 #7
0
        public void GetLogAnalyticsResourcesTest()
        {
            var handler1 = new RecordedDelegatingHandler {
                StatusCodeToReturn = HttpStatusCode.OK
            };
            var handler2 = new RecordedDelegatingHandler {
                StatusCodeToReturn = HttpStatusCode.OK
            };

            using (MockContext context = MockContext.Start(this.GetType()))
            {
                // Create clients
                var cdnMgmtClient   = CdnTestUtilities.GetCdnManagementClient(context, handler1);
                var resourcesClient = CdnTestUtilities.GetResourceManagementClient(context, handler2);

                // Create resource group
                var resourceGroupName = CdnTestUtilities.CreateResourceGroup(resourcesClient);

                try
                {
                    // Create a standard Azure frontdoor profile
                    string  profileName      = TestUtilities.GenerateName("profile");
                    Profile createParameters = new Profile
                    {
                        Location = "WestUs",
                        Sku      = new Sku {
                            Name = SkuName.StandardAzureFrontDoor
                        },
                        Tags = new Dictionary <string, string>
                        {
                            { "key1", "value1" },
                            { "key2", "value2" }
                        }
                    };
                    var profile = cdnMgmtClient.Profiles.Create(resourceGroupName, profileName, createParameters);

                    // Create a standard Azure frontdoor endpoint
                    string endpointName             = TestUtilities.GenerateName("endpointName");
                    var    endpointCreateParameters = new AFDEndpoint("WestUs")
                    {
                        EnabledState = "Enabled",
                        OriginResponseTimeoutSeconds = 60,
                        Tags = new Dictionary <string, string>
                        {
                            { "key1", "value1" },
                            { "key2", "value2" }
                        }
                    };
                    var endpoint = cdnMgmtClient.AFDEndpoints.Create(resourceGroupName, profileName, endpointName, endpointCreateParameters);

                    ResourcesResponse response = cdnMgmtClient.LogAnalytics.GetLogAnalyticsResources(resourceGroupName, profileName);
                    Assert.NotNull(response);
                    Assert.NotNull(response.CustomDomains);
                    Assert.NotNull(response.Endpoints);
                    Assert.NotEmpty(response.Endpoints);
                }
                finally
                {
                    // Delete resource group
                    _ = CdnTestUtilities.DeleteResourceGroupAsync(resourcesClient, resourceGroupName);
                }
            }
        }
コード例 #8
0
ファイル: ResourcesResponse.cs プロジェクト: wfiispz/Monitor
 protected bool Equals(ResourcesResponse other)
 {
     return(Equals(Resources, other.Resources) && Equals(Page, other.Page));
 }