This is an automated email from the ASF dual-hosted git repository. mradhakrishnan pushed a commit to branch AMBARI-24798 in repository https://gitbox.apache.org/repos/asf/ambari.git
commit 5fcb0cab0247159ebc42dc30e7ebdbbe1b1af3f2 Author: Madhuvanthi Radhakrishnan <mradhakrish...@hortonworks.com> AuthorDate: Thu Oct 18 15:39:18 2018 -0700 [AMBARI-24798] Add "maintainer" field to StackService API (mradhakrishnan) --- .../ambari/server/controller/StackServiceResponse.java | 7 +++++++ .../controller/internal/StackServiceResourceProvider.java | 7 +++++++ .../java/org/apache/ambari/server/stack/ServiceModule.java | 4 ++++ .../java/org/apache/ambari/server/state/ServiceInfo.java | 13 +++++++++++++ 4 files changed, 31 insertions(+) diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java index fda087a..6b579c6 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java @@ -41,6 +41,7 @@ public class StackServiceResponse { private String comments; private String serviceVersion; private ServiceInfo.Selection selection; + private String maintainer; private boolean serviceCheckSupported; private List<String> customCommands; @@ -100,6 +101,7 @@ public class StackServiceResponse { requiredServices = service.getRequiredServices(); serviceCheckSupported = null != service.getCommandScript(); selection = service.getSelection(); + maintainer = service.getMaintainer(); // the custom command names defined at the service (not component) level List<CustomCommandDefinition> definitions = service.getCustomCommands(); @@ -130,6 +132,11 @@ public class StackServiceResponse { this.selection = selection; } + @ApiModelProperty(name = "maintainer") + public String getMaintainer(){ + return maintainer; + } + @ApiModelProperty(name = "stack_name") public String getStackName() { return stackName; diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java index 7e07861..9395276 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java @@ -72,6 +72,9 @@ public class StackServiceResourceProvider extends ReadOnlyResourceProvider { private static final String SELECTION_PROPERTY_ID = PropertyHelper.getPropertyId( "StackServices", "selection"); + private static final String MAINTAINER_PROPERTY_ID = PropertyHelper.getPropertyId( + "StackServices", "maintainer"); + private static final String VERSION_PROPERTY_ID = PropertyHelper.getPropertyId( "StackServices", "service_version"); @@ -129,6 +132,7 @@ public class StackServiceResourceProvider extends ReadOnlyResourceProvider { USER_NAME_PROPERTY_ID, COMMENTS_PROPERTY_ID, SELECTION_PROPERTY_ID, + MAINTAINER_PROPERTY_ID, VERSION_PROPERTY_ID, CONFIG_TYPES, REQUIRED_SERVICES_ID, @@ -220,6 +224,9 @@ public class StackServiceResourceProvider extends ReadOnlyResourceProvider { setResourceProperty(resource, SELECTION_PROPERTY_ID, response.getSelection(), requestedIds); + setResourceProperty(resource, MAINTAINER_PROPERTY_ID, + response.getMaintainer(), requestedIds); + setResourceProperty(resource, CONFIG_TYPES, response.getConfigTypes(), requestedIds); diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java index b3d4b17..e9997b7 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java @@ -300,6 +300,10 @@ public class ServiceModule extends BaseModule<ServiceModule, ServiceInfo> implem serviceInfo.setSelection(parent.getSelection()); } + if (serviceInfo.isMaintainerEmpty()) { + serviceInfo.setMaintainer(parent.getMaintainer()); + } + if(null == serviceInfo.getSupportDeleteViaUIField()){ serviceInfo.setSupportDeleteViaUI(parent.isSupportDeleteViaUI()); } diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java index 59cee41..b8e1e94 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java @@ -77,6 +77,7 @@ public class ServiceInfo implements Validable { private String comment; private String serviceType; private Selection selection; + private String maintainer; /** * Default to Python if not specified. @@ -426,6 +427,18 @@ public class ServiceInfo implements Validable { return selection == null; } + public String getMaintainer() { + return maintainer; + } + + public void setMaintainer(String maintainer) { + this.maintainer = maintainer; + } + + public boolean isMaintainerEmpty() { + return maintainer == null; + } + public String getComment() { return comment; }