Esempio n. 1
0
        public async Task <List <ApplicationRecordApiModel> > RefreshDataAsync()
        {
            var applicationQuery = new QueryApplicationsApiModel();
            var items            = new List <ApplicationRecordApiModel>();
            // TODO: Implement paging.
            string nextPageLink = null;

            try
            {
                do
                {
                    var applications = await this._opcVaultServiceClient.QueryApplicationsAsync(applicationQuery, nextPageLink);

                    foreach (var app in applications.Applications)
                    {
                        items.Add(app);
                    }
                    nextPageLink = applications.NextPageLink;
                } while (nextPageLink != null);
            }
            catch (Exception ex)
            {
                await Xamarin.Forms.Application.Current.MainPage.DisplayAlert("The application query failed.", "Exception message: " + ex.Message, "Dismiss");
            }
            return(items);
        }
        public async Task <ActionResult> IndexAsync()
        {
            AuthorizeClient();
            var applicationQuery    = new QueryApplicationsApiModel();
            var applicationsTrimmed = new List <ApplicationRecordTrimmedApiModel>();
            // TODO: Implement paging.
            string nextPageLink = null;

            try
            {
                do
                {
                    var applications = await _opcVault.QueryApplicationsAsync(applicationQuery, nextPageLink);

                    foreach (var app in applications.Applications)
                    {
                        applicationsTrimmed.Add(new ApplicationRecordTrimmedApiModel(app));
                    }
                    nextPageLink = applications.NextPageLink;
                } while (nextPageLink != null);
            }
            catch (Exception ex)
            {
                ViewData["ErrorMessage"] = "The application query failed." +
                                           "Message:" + ex.Message;
                return(View(applicationsTrimmed));
            }
            return(View(applicationsTrimmed));
        }
        public async Task <QueryApplicationsResponseApiModel> QueryApplicationsAsync(
            [FromBody] QueryApplicationsApiModel query,
            [FromQuery] string nextPageLink,
            [FromQuery] int?pageSize)
        {
            if (query == null)
            {
                // query all
                query = new QueryApplicationsApiModel(null, null, 0, null, null, null);
            }
            var result = await _applicationDatabase.QueryApplicationsAsync(
                query.ApplicationName,
                query.ApplicationUri,
                (uint)query.ApplicationType,
                query.ProductUri,
                query.ServerCapabilities,
                (Types.QueryApplicationState?) query.ApplicationState,
                nextPageLink,
                pageSize);

            return(new QueryApplicationsResponseApiModel(result));
        }