protected CloudServiceBrokerExtended toCloudServiceBrokerExtended(CloudServiceBroker serviceBroker, String spaceGuid) { return new CloudServiceBrokerExtended(serviceBroker.getMeta(), serviceBroker.getName(), serviceBroker.getUrl(), serviceBroker.getUsername(), serviceBroker.getPassword(), spaceGuid); }
@Override public void updateServicePlanVisibilityForBroker(String name, boolean visibility) { CloudServiceBroker broker = getServiceBroker(name); String urlPath = "/v2/services?q={q}"; Map<String, Object> urlVars = new HashMap<>(); urlVars.put("q", "service_broker_guid:" + broker.getMeta() .getGuid()); List<Map<String, Object>> serviceResourceList = getAllResources(urlPath, urlVars); for (Map<String, Object> serviceResource : serviceResourceList) { Map<String, Object> metadata = (Map<String, Object>) serviceResource.get("metadata"); String serviceGuid = (String) metadata.get("guid"); urlPath = "/v2/service_plans?q={q}"; urlVars = new HashMap<>(); urlVars.put("q", "service_guid:" + serviceGuid); List<Map<String, Object>> planResourceList = getAllResources(urlPath, urlVars); for (Map<String, Object> planResource : planResourceList) { metadata = (Map<String, Object>) planResource.get("metadata"); String planGuid = (String) metadata.get("guid"); HashMap<String, Object> planUpdateRequest = new HashMap<>(); planUpdateRequest.put("public", visibility); getRestTemplate().put(getUrl("/v2/service_plans/{guid}"), planUpdateRequest, planGuid); } } }
protected void updateServiceBroker(DelegateExecution context, CloudServiceBroker serviceBroker, CloudControllerClient client) { try { getStepLogger().info(MessageFormat.format(Messages.UPDATING_SERVICE_BROKER, serviceBroker.getName())); client.updateServiceBroker(serviceBroker); getStepLogger().debug(MessageFormat.format(Messages.UPDATED_SERVICE_BROKER, serviceBroker.getName())); } catch (CloudOperationException e) { switch (e.getStatusCode()) { case NOT_IMPLEMENTED: getStepLogger().warn(Messages.UPDATE_OF_SERVICE_BROKERS_FAILED_501, serviceBroker.getName()); break; case FORBIDDEN: if (shouldSucceed(context)) { getStepLogger().warn(Messages.UPDATE_OF_SERVICE_BROKERS_FAILED_403, serviceBroker.getName()); return; } throw new CloudServiceBrokerException(e); case BAD_GATEWAY: throw new CloudServiceBrokerException(e); default: throw e; } } }
private CloudServiceBroker mapServiceBrokerResource(Map<String, Object> resource) { return new CloudServiceBroker(getV2Meta(resource), getAttributeOfV2Resource(resource, "name", String.class), getAttributeOfV2Resource(resource, "broker_url", String.class), getAttributeOfV2Resource(resource, "auth_username", String.class)); }
@Override public void updateServicePlanVisibilityForBroker(String name, boolean visibility) { CloudServiceBroker broker = getServiceBroker(name); String urlPath = "/v2/services?q={q}"; Map<String, Object> urlVars = new HashMap<>(); urlVars.put("q", "service_broker_guid:" + broker.getMeta().getGuid()); List<Map<String, Object>> serviceResourceList = getAllResources(urlPath, urlVars); for (Map<String, Object> serviceResource : serviceResourceList) { Map<String, Object> metadata = (Map<String, Object>) serviceResource.get("metadata"); String serviceGuid = (String) metadata.get("guid"); urlPath = "/v2/service_plans?q={q}"; urlVars = new HashMap<>(); urlVars.put("q", "service_guid:" + serviceGuid); List<Map<String, Object>> planResourceList = getAllResources(urlPath, urlVars); for (Map<String, Object> planResource : planResourceList) { metadata = (Map<String, Object>) planResource.get("metadata"); String planGuid = (String) metadata.get("guid"); HashMap<String, Object> planUpdateRequest = new HashMap<>(); planUpdateRequest.put("public", visibility); getRestTemplate().put(getUrl("/v2/service_plans/{guid}"), planUpdateRequest, planGuid); } } }
protected void updateServiceBroker(DelegateExecution context, CloudServiceBroker serviceBroker, CloudControllerClient client) { try { getStepLogger().info(MessageFormat.format(Messages.UPDATING_SERVICE_BROKER, serviceBroker.getName())); client.updateServiceBroker(serviceBroker); getStepLogger().debug(MessageFormat.format(Messages.UPDATED_SERVICE_BROKER, serviceBroker.getName())); } catch (CloudOperationException e) { switch (e.getStatusCode()) { case NOT_IMPLEMENTED: getStepLogger().warn(Messages.UPDATE_OF_SERVICE_BROKERS_FAILED_501, serviceBroker.getName()); break; case FORBIDDEN: if (shouldSucceed(context)) { getStepLogger().warn(Messages.UPDATE_OF_SERVICE_BROKERS_FAILED_403, serviceBroker.getName()); return; } throw new CloudServiceBrokerException(e); case BAD_GATEWAY: throw new CloudServiceBrokerException(e); default: throw e; } } }
private CloudServiceBroker mapServiceBrokerResource(Map<String, Object> resource) { return new CloudServiceBroker(getMeta(resource), getEntityAttribute(resource, "name", String.class), getEntityAttribute(resource, "broker_url", String.class), getEntityAttribute(resource, "auth_username", String.class)); }
@Override public void createServiceBroker(CloudServiceBroker serviceBroker) { Assert.notNull(serviceBroker, "Service Broker must not be null"); Assert.notNull(serviceBroker.getName(), "Service Broker name must not be null"); Assert.notNull(serviceBroker.getUrl(), "Service Broker URL must not be null"); Assert.notNull(serviceBroker.getUsername(), "Service Broker username must not be null"); Assert.notNull(serviceBroker.getPassword(), "Service Broker password must not be null"); HashMap<String, Object> serviceRequest = new HashMap<>(); serviceRequest.put("name", serviceBroker.getName()); serviceRequest.put("broker_url", serviceBroker.getUrl()); serviceRequest.put("auth_username", serviceBroker.getUsername()); serviceRequest.put("auth_password", serviceBroker.getPassword()); getRestTemplate().postForObject(getUrl("/v2/service_brokers"), serviceRequest, String.class); }
@Override public void deleteServiceBroker(String name) { CloudServiceBroker existingBroker = getServiceBroker(name); Assert.notNull(existingBroker, "Cannot update broker if it does not first exist"); getRestTemplate().delete(getUrl("/v2/service_brokers/{guid}"), existingBroker.getMeta().getGuid()); }
@Override public void createServiceBroker(CloudServiceBroker serviceBroker) { Assert.notNull(serviceBroker, "Service Broker must not be null"); Assert.notNull(serviceBroker.getName(), "Service Broker name must not be null"); Assert.notNull(serviceBroker.getUrl(), "Service Broker URL must not be null"); Assert.notNull(serviceBroker.getUsername(), "Service Broker username must not be null"); Assert.notNull(serviceBroker.getPassword(), "Service Broker password must not be null"); HashMap<String, Object> serviceRequest = new HashMap<>(); serviceRequest.put("name", serviceBroker.getName()); serviceRequest.put("broker_url", serviceBroker.getUrl()); serviceRequest.put("auth_username", serviceBroker.getUsername()); serviceRequest.put("auth_password", serviceBroker.getPassword()); getRestTemplate().postForObject(getUrl("/v2/service_brokers"), serviceRequest, String.class); }
@Override public void deleteServiceBroker(String name) { CloudServiceBroker existingBroker = getServiceBroker(name); getRestTemplate().delete(getUrl("/v2/service_brokers/{guid}"), existingBroker.getMeta() .getGuid()); }
@Override public void updateServiceBroker(CloudServiceBroker serviceBroker) { Assert.notNull(serviceBroker, "Service Broker must not be null"); Assert.notNull(serviceBroker.getName(), "Service Broker name must not be null"); Assert.notNull(serviceBroker.getUrl(), "Service Broker URL must not be null"); Assert.notNull(serviceBroker.getUsername(), "Service Broker username must not be null"); Assert.notNull(serviceBroker.getPassword(), "Service Broker password must not be null"); CloudServiceBroker existingBroker = getServiceBroker(serviceBroker.getName()); HashMap<String, Object> serviceRequest = new HashMap<>(); serviceRequest.put("name", serviceBroker.getName()); serviceRequest.put("broker_url", serviceBroker.getUrl()); serviceRequest.put("auth_username", serviceBroker.getUsername()); serviceRequest.put("auth_password", serviceBroker.getPassword()); getRestTemplate().put(getUrl("/v2/service_brokers/{guid}"), serviceRequest, existingBroker.getMeta() .getGuid()); }
@Override protected StepPhase executeStep(ExecutionWrapper execution) { CloudApplication serviceBrokerAppication = StepsUtil.getServiceBrokerSubscriberToRestart(execution.getContext()); CloudServiceBrokerExtended serviceBroker = getServiceBrokerFromApp(serviceBrokerAppication, execution.getContext()); try { CloudControllerClient client = execution.getControllerClient(); CloudServiceBroker existingServiceBroker = client.getServiceBroker(serviceBroker.getName(), false); if (existingServiceBroker == null) { getStepLogger().warn(MessageFormat.format(Messages.SERVICE_BROKER_DOES_NOT_EXIST, serviceBroker.getName())); } else { serviceBroker.setMeta(existingServiceBroker.getMeta()); updateServiceBroker(execution.getContext(), serviceBroker, client); } return StepPhase.DONE; } catch (CloudOperationException coe) { CloudControllerException e = new CloudControllerException(coe); getStepLogger().warn(e, Messages.FAILED_SERVICE_BROKER_UPDATE, serviceBroker.getName()); return StepPhase.DONE; } }
@Override public void updateServiceBroker(CloudServiceBroker serviceBroker) { Assert.notNull(serviceBroker, "Service Broker must not be null"); Assert.notNull(serviceBroker.getName(), "Service Broker name must not be null"); Assert.notNull(serviceBroker.getUrl(), "Service Broker URL must not be null"); Assert.notNull(serviceBroker.getUsername(), "Service Broker username must not be null"); Assert.notNull(serviceBroker.getPassword(), "Service Broker password must not be null"); CloudServiceBroker existingBroker = getServiceBroker(serviceBroker.getName()); Assert.notNull(existingBroker, "Cannot update broker if it does not first exist"); HashMap<String, Object> serviceRequest = new HashMap<>(); serviceRequest.put("name", serviceBroker.getName()); serviceRequest.put("broker_url", serviceBroker.getUrl()); serviceRequest.put("auth_username", serviceBroker.getUsername()); serviceRequest.put("auth_password", serviceBroker.getPassword()); getRestTemplate().put(getUrl("/v2/service_brokers/{guid}"), serviceRequest, existingBroker.getMeta().getGuid()); }
@Override protected StepPhase executeStep(ExecutionWrapper execution) { CloudApplication serviceBrokerAppication = StepsUtil.getServiceBrokerSubscriberToRestart(execution.getContext()); CloudServiceBrokerExtended serviceBroker = getServiceBrokerFromApp(serviceBrokerAppication, execution.getContext()); try { CloudControllerClient client = execution.getControllerClient(); CloudServiceBroker existingServiceBroker = client.getServiceBroker(serviceBroker.getName(), false); if (existingServiceBroker == null) { getStepLogger().warn(MessageFormat.format(Messages.SERVICE_BROKER_DOES_NOT_EXIST, serviceBroker.getName())); } else { serviceBroker.setMeta(existingServiceBroker.getMeta()); updateServiceBroker(execution.getContext(), serviceBroker, client); } return StepPhase.DONE; } catch (CloudOperationException coe) { CloudControllerException e = new CloudControllerException(coe); getStepLogger().warn(e, Messages.FAILED_SERVICE_BROKER_UPDATE, serviceBroker.getName()); return StepPhase.DONE; } }