示例#1
0
        public IEnumerable <InstanceDetail> GetInstances(Guid applicationId)
        {
            VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Instances);
            var instanceDetails = VcapRequest.Execute <Dictionary <int, InstanceDetail> >();

            return(instanceDetails.Values);
        }
示例#2
0
 private void UploadBits(Guid applicationId, byte[] fileBytes, ResourceFile[] resourcesArray)
 {
     VcapRequest.BuildRequest(HttpMethod.Put, ContentTypes.MultipartFormData, GetEntityNameV2(), applicationId, Constants.Bits);
     VcapRequest.AddFile("application", fileBytes, applicationId.ToString());
     VcapRequest.AddBodyParameter("resources", resourcesArray);
     VcapRequest.Execute();
 }
示例#3
0
        public Resource <User> Create(Guid userId)
        {
            VcapRequest.BuildRequest(HttpMethod.Post, ContentTypes.Json, GetEntityNameV2());
            var user = new { guid = userId };

            VcapRequest.AddBodyParameter(EntityName, user);

            return(VcapRequest.Execute <Resource <User> >());
        }
示例#4
0
        private void ScorePassword(Guid userId, string newPass, string oldPass)
        {
            VcapRequest.BuildRequest(HttpMethod.Put, ContentTypes.Json, Constants.UserUaa, userId, Constants.Password);

            var password = new { password = newPass, oldPassword = oldPass };

            VcapRequest.AddBodyParameter("password", password);
            VcapRequest.Execute();
        }
示例#5
0
        public void ChangePassword(Guid userId, string newPassword, string oldPassword)
        {
            VcapRequest.BuildRequest(HttpMethod.Post, ContentTypes.FormUrlEncoded, Constants.Password, Constants.Score);
            VcapRequest.AddBodyParameter("password", newPassword);

            var score        = new { score = 0, requiredScore = 0 };
            var responceInfo = VcapRequest.ExecuteAnonymousType(score);

            //TODO: need additional info how to handle previous responce

            ScorePassword(userId, newPassword, oldPassword);
        }
示例#6
0
        public void Login(string email, string password)
        {
            VcapRequest.BuildRequest(HttpMethod.Post, ContentTypes.FormUrlEncoded, Constants.OuthToken);

            VcapRequest.AddBodyParameter("grant_type", "password");
            VcapRequest.AddBodyParameter("username", email);
            VcapRequest.AddBodyParameter("password", password);

            var token = VcapRequest.Execute <AccessToken>();

            CredentialManager.RegisterToken(token, CredentialManager.CurrentTarget);
        }
示例#7
0
        public IEnumerable <StatInfo> GetStats(Guid applicationId)
        {
            VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Stats);
            var statInfos = VcapRequest.Execute <Dictionary <int, StatInfo> >();
            var result    = new List <StatInfo>();

            foreach (KeyValuePair <int, StatInfo> statInfo in statInfos)
            {
                StatInfo si = statInfo.Value;
                si.StatInfoId = statInfo.Key;
                result.Add(si);
            }
            return(result);
        }
示例#8
0
        public Resource <User> Update(IEnumerable <Guid> organizationGuids, IEnumerable <Guid> managedOrganizationGuids,
                                      IEnumerable <Guid> auditedOrganizationGuids, Guid userId)
        {
            VcapRequest.BuildRequest(HttpMethod.Put, ContentTypes.Json, GetEntityNameV2(), userId);
            var organization =
                new
            {
                organization_guids         = organizationGuids,
                managed_organization_guids = managedOrganizationGuids,
                audited_organization_guids = auditedOrganizationGuids
            };

            VcapRequest.AddBodyParameter(string.Empty, organization);

            return(VcapRequest.Execute <Resource <User> >());
        }
示例#9
0
        public Guid Create(string username, IEnumerable <string> arrayEmails, string passwd, string firstName, string lastName)
        {
            VcapRequest.BuildRequest(HttpMethod.Post, ContentTypes.Json, Constants.UserUaa);

            var listEmails = BuildingEmails(arrayEmails);
            var user       = new
            {
                userName = username,
                emails   = listEmails,
                password = passwd,
                name     = new { givenName = firstName, familyName = lastName }
            };

            VcapRequest.AddBodyParameter(EntityName, user);

            var tempUser = new { id = Guid.Empty };

            return(VcapRequest.ExecuteAnonymousType(tempUser).id);
        }
示例#10
0
 public Stream Download(Guid applicationId)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Download);
     return(VcapRequest.Download());
 }
示例#11
0
 public Info GetInfo()
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2());
     return(VcapRequest.Execute <Info>());
 }
示例#12
0
 public IEnumerable <Resource <Application> > GetApplicationsBySpace(Space space)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, space.AppsUrl);
     return(VcapRequest.Execute <ResponseData <Application> >().Resources);
 }
示例#13
0
 public IEnumerable <Resource <ApplicationEvent> > GetEvents(Application application)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, application.EventsUrl);
     return(VcapRequest.Execute <ResponseData <ApplicationEvent> >().Resources);
 }
示例#14
0
 public IEnumerable <Crashlog> GetCrashlogs(Guid applicationId)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Crash);
     return(VcapRequest.Execute <IEnumerable <Crashlog> >());
 }
示例#15
0
 public void UnbindRouteApplication(Guid applicationId, Guid routeId)
 {
     VcapRequest.BuildRequest(HttpMethod.Delete, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Route, routeId);
     VcapRequest.Execute();
 }
示例#16
0
 public Resource <Application> BindRouteApplication(Guid applicationId, Guid routeId)
 {
     VcapRequest.BuildRequest(HttpMethod.Put, ContentTypes.Json, GetEntityNameV2(), applicationId, Constants.Route, routeId);
     return(VcapRequest.Execute <Resource <Application> >());
 }
示例#17
0
 public IEnumerable <Resource <Domain> > GetDomainsBySpace(Guid spaceId)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, GetEntityNameV2(Constants.Space), spaceId, EntityName);
     return(VcapRequest.Execute <ResponseData <Domain> >().Resources);
 }
示例#18
0
 private ResourceFile[] CheckResources(ResourceFile[] resourcesArray)
 {
     VcapRequest.BuildRequest(HttpMethod.Put, ContentTypes.Json, GetEntityNameV2(Constants.ResourceMatch));
     VcapRequest.AddBodyParameter("resources", resourcesArray);
     return(VcapRequest.Execute <ResourceFile[]>());
 }
示例#19
0
 protected BaseProvider(VcapCredentialManager credentialManager, bool isLogin, bool isAuthentication)
 {
     CredentialManager = credentialManager;
     VcapRequest       = new VcapRequest(CredentialManager, isLogin, isAuthentication);
 }
示例#20
0
 public IEnumerable <Resource <Space> > GetSpacesByOrganization(Organization organization)
 {
     VcapRequest.BuildRequest(HttpMethod.Get, ContentTypes.Json, organization.SpacesUrl);
     return(VcapRequest.Execute <ResponseData <Space> >().Resources);
 }