This is an automated email from the ASF dual-hosted git repository. mradhakrishnan pushed a commit to branch AMBARI-24711 in repository https://gitbox.apache.org/repos/asf/ambari.git
commit a6536f3c6fb0fa5415b42b63ff994fd2bc78c621 Author: Madhuvanthi Radhakrishnan <[email protected]> AuthorDate: Thu Sep 27 15:51:56 2018 -0700 Modifications to choose only necessary changes from Ambari3.0 to Ambari2.8 (mradhakrishnan) --- ambari-server/src/main/assemblies/server.xml | 5 - .../api/services/AbstractVersionService.java | 362 --------------------- .../ambari/server/api/services/AmbariMetaInfo.java | 4 +- .../ambari/server/api/services/MpacksService.java | 7 +- .../controller/AmbariManagementController.java | 1 - .../controller/AmbariManagementControllerImpl.java | 43 +-- .../ambari/server/controller/MpackResponse.java | 3 +- .../controller/internal/MpackResourceProvider.java | 32 +- .../apache/ambari/server/mpack/MpackManager.java | 14 +- .../org/apache/ambari/server/orm/dao/MpackDAO.java | 18 +- .../ambari/server/orm/entities/MpackEntity.java | 22 +- .../apache/ambari/server/stack/StackManager.java | 3 +- .../org/apache/ambari/server/state/Module.java | 25 ++ .../ambari/server/state/ModuleComponent.java | 11 + .../java/org/apache/ambari/server/state/Mpack.java | 8 +- .../api/resources/MpackResourceDefinitionTest.java | 1 + .../server/api/services/AmbariMetaInfoTest.java | 51 ++- .../server/api/services/MpackServiceTest.java | 94 ------ .../AmbariManagementControllerImplTest.java | 28 +- .../ambari/server/controller/MpackRequestTest.java | 2 +- .../server/controller/MpackResponseTest.java | 3 - .../internal/AbstractResourceProviderTest.java | 2 +- .../internal/ClusterControllerImplTest.java | 2 +- .../internal/MpackResourceProviderTest.java | 35 +- .../apache/ambari/server/orm/dao/MpackDAOTest.java | 20 +- .../server/orm/entities/MpackEntityTest.java | 6 +- .../org/apache/ambari/server/state/MpackTest.java | 4 +- .../org/apache/ambari/server/state/MpacksTest.java | 95 ------ .../ambari/msi/AbstractResourceProviderTest.java | 7 +- 29 files changed, 151 insertions(+), 757 deletions(-) diff --git a/ambari-server/src/main/assemblies/server.xml b/ambari-server/src/main/assemblies/server.xml index 464972f..21524ee 100644 --- a/ambari-server/src/main/assemblies/server.xml +++ b/ambari-server/src/main/assemblies/server.xml @@ -316,11 +316,6 @@ </file> <file> <fileMode>755</fileMode> - <source>target/classes/cluster-settings.xml</source> - <outputDirectory>/var/lib/ambari-server/resources</outputDirectory> - </file> - <file> - <fileMode>755</fileMode> <source>target/classes/Ambari-DDL-Postgres-CREATE.sql</source> <outputDirectory>/var/lib/ambari-server/resources</outputDirectory> </file> diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AbstractVersionService.java b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AbstractVersionService.java deleted file mode 100644 index 2d81602..0000000 --- a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AbstractVersionService.java +++ /dev/null @@ -1,362 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ambari.server.api.services; - -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; - -import org.apache.ambari.server.api.rest.BootStrapResource; -import org.apache.ambari.server.api.rest.HealthCheck; -import org.apache.ambari.server.api.rest.KdcServerReachabilityCheck; -import org.apache.ambari.server.api.util.ApiVersion; - -/** - * Abstract class for single entry point for an API version - */ -public abstract class AbstractVersionService { - - /** - * Handles /actions request. - * - * @return action service - */ - @Path("/actions") - public ActionService getActionService(@PathParam("apiVersion") String apiVersion) { - return new ActionService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /alert_targets request. - * - * @return alert targets service - */ - @Path("/alert_targets") - public AlertTargetService getAlertTargetService(@PathParam("apiVersion") String apiVersion) { - return new AlertTargetService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /privileges request. - * - * @return privileges service - */ - @Path("/privileges") - public AmbariPrivilegeService getAmbariPrivilegeService(@PathParam("apiVersion") String apiVersion) { - return new AmbariPrivilegeService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /blueprints request. - * - * @return blueprints service - */ - @Path("/blueprints") - public BlueprintService getBlueprintService(@PathParam("apiVersion") String apiVersion) { - return new BlueprintService(ApiVersion.valueOf(apiVersion)); - } - - - /** - * Handles /links request. - * - * @return extension links service - */ - @Path("/links") - public ExtensionLinksService getExtensionLinksService(@PathParam("apiVersion") String apiVersion) { - return new ExtensionLinksService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /extensions request. - * - * @return extensions service - */ - @Path("/extensions") - public ExtensionsService getExtensionsService(@PathParam("apiVersion") String apiVersion) { - return new ExtensionsService(ApiVersion.valueOf(apiVersion)); - } - - - /** - * Handles /clusters request. - * - * @return cluster service - */ - @Path("/clusters") - public ClusterService getClusterService(@PathParam("apiVersion") String apiVersion) { - return new ClusterService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /feeds request. - * TODO: Cleanup? - * - * @return feed service - */ - @Path("/feeds") - public FeedService getFeedService(@PathParam("apiVersion") String apiVersion) { - return new FeedService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /groups request. - * - * @return group service - */ - @Path("/groups") - public GroupService getGroupService(@PathParam("apiVersion") String apiVersion) { - return new GroupService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /hosts request. - * - * @return host service - */ - @Path("/hosts") - public HostService getHostService(@PathParam("apiVersion") String apiVersion) { - return new HostService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /instances request. - * TODO: Cleanup? - * - * @return instance service - */ - @Path("/instances") - public InstanceService getInstanceService(@PathParam("apiVersion") String apiVersion) { - return new InstanceService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /kerberos_descriptors request. - * - * @return kerberos descriptor service - */ - @Path("/kerberos_descriptors") - public KerberosDescriptorService getKerberosDescriptorService(@PathParam("apiVersion") String apiVersion) { - return new KerberosDescriptorService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /keys request. - * - * @return key service - */ - @Path("/keys") - public KeyService getKeyService(@PathParam("apiVersion") String apiVersion) { - return new KeyService(); - } - - /** - * Handles /ldap_sync_events request. - * - * @return Ldap sync event service - */ - @Path("/ldap_sync_events") - public LdapSyncEventService getLdapSyncEventService(@PathParam("apiVersion") String apiVersion) { - return new LdapSyncEventService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /logout request. - * - * @return logout service - */ - @Path("/logout") - public LogoutService getLogoutService(@PathParam("apiVersion") String apiVersion) { - return new LogoutService(); - } - - /** - * Handles /permissions request. - * - * @return permission service - */ - @Path("/permissions") - public PermissionService getPermissionService(@PathParam("apiVersion") String apiVersion) { - return new PermissionService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /persist request. - * - * @return persist service - */ - @Path("/persist") - public PersistKeyValueService getPersistKeyValueService(@PathParam("apiVersion") String apiVersion) { - return new PersistKeyValueService(); - } - - /** - * Handles /remoteclusters request - * - * @return remote clusters service - */ - @Path("/remoteclusters") - public RemoteClustersService getRemoteClustersService(@PathParam("apiVersion") String apiVersion) { - return new RemoteClustersService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /requests request. - * - * @return request service - */ - @Path("/requests") - public RequestService getRequestService(@PathParam("apiVersion") String apiVersion) { - return new RequestService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /settings request. - * - * @return request service - */ - @Path("/settings") - public SettingService getSettingService(@PathParam("apiVersion") String apiVersion) { - return new SettingService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /authorizations request. - * - * @return role authorization service - */ - @Path("/authorizations") - public RoleAuthorizationService getRoleAuthorizationService(@PathParam("apiVersion") String apiVersion) { - return new RoleAuthorizationService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /services request. - * - * @return root service service - */ - @Path("/services") - public RootServiceService getRootServiceService(@PathParam("apiVersion") String apiVersion) { - return new RootServiceService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /targets request. - * TODO: Cleanup? - * - * @return target cluster service - */ - @Path("/targets") - public TargetClusterService getTargetClusterService(@PathParam("apiVersion") String apiVersion) { - return new TargetClusterService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /users request. - * - * @return user service - */ - @Path("/users") - public UserService getUserService(@PathParam("apiVersion") String apiVersion) { - return new UserService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /version_definitions request. - * - * @return version definition service - */ - @Path("/version_definitions") - public VersionDefinitionService getVersionDefinitionService(@PathParam("apiVersion") String apiVersion) { - return new VersionDefinitionService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /views request. - * - * @return view service - */ - @Path("/views") - public ViewService getViewService(@PathParam("apiVersion") String apiVersion) { - return new ViewService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /view/urls request. - * - * @return view urls service - */ - @Path("/view/urls") - public ViewUrlsService getViewUrlsService(@PathParam("apiVersion") String apiVersion) { - return new ViewUrlsService(ApiVersion.valueOf(apiVersion)); - } - - /** - * Handles /stacks request. - * - * @return stacks service - */ - @Path("/stacks") - public StacksService getStacksService(@PathParam("apiVersion") String apiVersion) { - return new StacksService(ApiVersion.valueOf(apiVersion)); - } - - - /** - * Handles /bootstrap request. - * - * @return bootstrap service - */ - @Path("/bootstrap") - public BootStrapResource getBootStrapResource(@PathParam("apiVersion") String apiVersion) { - return new BootStrapResource(); - } - - - /** - * Handles /check request. - * - * @return health check service - */ - @Path("/check") - public HealthCheck getHealthCheck(@PathParam("apiVersion") String apiVersion) { - return new HealthCheck(); - } - - /** - * Handles /kdc_check request. - * - * @return kdc server reachability service - */ - @Path("/kdc_check") - public KdcServerReachabilityCheck getKdcServerReachabilityCheck(@PathParam("apiVersion") String apiVersion) { - return new KdcServerReachabilityCheck(); - } - - /** - * Handles /mpacks request. - * - * @return mpacks service - */ - @Path("/mpacks") - public MpacksService getMpacksService(@PathParam("apiVersion") String apiVersion) { - return new MpacksService(ApiVersion.valueOf(apiVersion)); - } - - -} diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java index 6180a13..6e5c66e 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java @@ -44,9 +44,9 @@ import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.ParentObjectNotFoundException; import org.apache.ambari.server.StackAccessException; import org.apache.ambari.server.configuration.Configuration; -import org.apache.ambari.server.controller.RootService; import org.apache.ambari.server.controller.MpackRequest; import org.apache.ambari.server.controller.MpackResponse; +import org.apache.ambari.server.controller.RootService; import org.apache.ambari.server.controller.spi.ResourceAlreadyExistsException; import org.apache.ambari.server.controller.utilities.PropertyHelper; import org.apache.ambari.server.customactions.ActionDefinition; @@ -59,11 +59,9 @@ import org.apache.ambari.server.mpack.MpackManager; import org.apache.ambari.server.mpack.MpackManagerFactory; import org.apache.ambari.server.orm.dao.AlertDefinitionDAO; import org.apache.ambari.server.orm.dao.MetainfoDAO; -import org.apache.ambari.server.orm.dao.StackDAO; import org.apache.ambari.server.orm.entities.AlertDefinitionEntity; import org.apache.ambari.server.orm.entities.MpackEntity; import org.apache.ambari.server.orm.entities.StackEntity; -import org.apache.ambari.server.stack.StackDirectory; import org.apache.ambari.server.stack.StackManager; import org.apache.ambari.server.stack.StackManagerFactory; import org.apache.ambari.server.stack.upgrade.ConfigUpgradePack; diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/services/MpacksService.java b/ambari-server/src/main/java/org/apache/ambari/server/api/services/MpacksService.java index 4694841..902b8df 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/api/services/MpacksService.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/api/services/MpacksService.java @@ -17,10 +17,7 @@ */ package org.apache.ambari.server.api.services; -import org.apache.ambari.server.api.resources.ResourceInstance; - - -import org.apache.ambari.server.controller.spi.Resource; +import java.util.Collections; import javax.ws.rs.DELETE; import javax.ws.rs.GET; @@ -33,8 +30,6 @@ import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.core.UriInfo; -import java.util.Collections; - import org.apache.ambari.server.api.resources.ResourceInstance; import org.apache.ambari.server.controller.MpackResponse.MpackResponseWrapper; diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java index d94fcbc..212ecb6 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java @@ -23,7 +23,6 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.ArrayList; import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.RoleCommand; diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java index 6061640..f910172 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java @@ -133,8 +133,8 @@ import org.apache.ambari.server.controller.metrics.MetricPropertyProviderFactory import org.apache.ambari.server.controller.metrics.MetricsCollectorHAManager; import org.apache.ambari.server.controller.metrics.timeline.cache.TimelineMetricCacheProvider; import org.apache.ambari.server.controller.spi.Resource; -import org.apache.ambari.server.controller.spi.SystemException; import org.apache.ambari.server.controller.spi.ResourceAlreadyExistsException; +import org.apache.ambari.server.controller.spi.SystemException; import org.apache.ambari.server.customactions.ActionDefinition; import org.apache.ambari.server.events.MetadataUpdateEvent; import org.apache.ambari.server.events.TopologyUpdateEvent; @@ -157,9 +157,9 @@ import org.apache.ambari.server.orm.entities.ClusterEntity; import org.apache.ambari.server.orm.entities.ExtensionLinkEntity; import org.apache.ambari.server.orm.entities.HostComponentDesiredStateEntity; import org.apache.ambari.server.orm.entities.HostEntity; +import org.apache.ambari.server.orm.entities.MpackEntity; import org.apache.ambari.server.orm.entities.RepoDefinitionEntity; import org.apache.ambari.server.orm.entities.RepoOsEntity; -import org.apache.ambari.server.orm.entities.MpackEntity; import org.apache.ambari.server.orm.entities.RepositoryVersionEntity; import org.apache.ambari.server.orm.entities.ServiceComponentDesiredStateEntity; import org.apache.ambari.server.orm.entities.SettingEntity; @@ -206,20 +206,6 @@ import org.apache.ambari.server.state.Mpack; import org.apache.ambari.server.state.OperatingSystemInfo; import org.apache.ambari.server.state.PropertyDependencyInfo; import org.apache.ambari.server.state.PropertyInfo; -import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.ServiceComponentFactory; -import org.apache.ambari.server.state.ServiceComponentHostFactory; -import org.apache.ambari.server.state.ConfigFactory; -import org.apache.ambari.server.state.StackId; -import org.apache.ambari.server.state.Cluster; -import org.apache.ambari.server.state.ConfigHelper; -import org.apache.ambari.server.state.StackInfo; -import org.apache.ambari.server.state.State; -import org.apache.ambari.server.state.Service; -import org.apache.ambari.server.state.ServiceComponent; -import org.apache.ambari.server.state.Host; -import org.apache.ambari.server.state.ServiceComponentHost; -import org.apache.ambari.server.state.CommandScriptDefinition; import org.apache.ambari.server.state.PropertyInfo.PropertyType; import org.apache.ambari.server.state.RepositoryInfo; import org.apache.ambari.server.state.SecurityType; @@ -235,26 +221,8 @@ import org.apache.ambari.server.state.StackId; import org.apache.ambari.server.state.StackInfo; import org.apache.ambari.server.state.State; import org.apache.ambari.server.state.UnlimitedKeyJCERequirement; -import org.apache.ambari.server.state.*; import org.apache.ambari.server.state.configgroup.ConfigGroupFactory; import org.apache.ambari.server.state.fsm.InvalidStateTransitionException; -import org.apache.ambari.server.state.PropertyInfo; -import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.DesiredConfig; -import org.apache.ambari.server.state.MaintenanceState; -import org.apache.ambari.server.state.SecurityType; -import org.apache.ambari.server.state.HostState; -import org.apache.ambari.server.state.ServiceComponentHostEvent; -import org.apache.ambari.server.state.ComponentInfo; -import org.apache.ambari.server.state.ServiceInfo; -import org.apache.ambari.server.state.RepositoryVersionState; -import org.apache.ambari.server.state.ServiceOsSpecific; -import org.apache.ambari.server.state.UnlimitedKeyJCERequirement; -import org.apache.ambari.server.state.ExtensionInfo; -import org.apache.ambari.server.state.RepositoryInfo; -import org.apache.ambari.server.state.OperatingSystemInfo; -import org.apache.ambari.server.state.HostComponentAdminState; -import org.apache.ambari.server.state.PropertyDependencyInfo; import org.apache.ambari.server.state.quicklinksprofile.QuickLinkVisibilityController; import org.apache.ambari.server.state.quicklinksprofile.QuickLinkVisibilityControllerFactory; import org.apache.ambari.server.state.quicklinksprofile.QuickLinksProfile; @@ -4746,13 +4714,6 @@ public class AmbariManagementControllerImpl implements AmbariManagementControlle configs = ambariMetaInfo.getStackProperties(stackName, stackVersion); } - //settings : stackSettings - if(configs.size() == 0){ - if (propertyName != null) { - configs = ambariMetaInfo.getStackSettingsByName(stackName, stackVersion, propertyName); - } else - configs = ambariMetaInfo.getStackSettings(stackName, stackVersion); - } for (PropertyInfo property: configs) { response.add(property.convertToResponse()); } diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/MpackResponse.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/MpackResponse.java index 70ddabe..308a2bb 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/MpackResponse.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/MpackResponse.java @@ -18,8 +18,9 @@ package org.apache.ambari.server.controller; -import org.apache.ambari.server.state.Mpack; import org.apache.ambari.server.controller.internal.MpackResourceProvider; +import org.apache.ambari.server.state.Mpack; + import io.swagger.annotations.ApiModelProperty; diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/MpackResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/MpackResourceProvider.java index ba52639..86802d5 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/MpackResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/MpackResourceProvider.java @@ -17,36 +17,35 @@ */ package org.apache.ambari.server.controller.internal; -import java.io.IOException; -import java.util.HashSet; -import java.util.Set; + +import java.io.IOException; import java.net.URI; import java.net.URL; -import java.util.ArrayList; import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; import java.util.LinkedHashSet; -import java.util.ArrayList; import java.util.List; -import com.google.inject.Inject; +import java.util.Map; +import java.util.Set; + import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.StaticallyInject; import org.apache.ambari.server.api.services.parsers.BodyParseException; -import org.apache.ambari.server.controller.spi.RequestStatus; +import org.apache.ambari.server.controller.AmbariManagementController; +import org.apache.ambari.server.controller.MpackRequest; +import org.apache.ambari.server.controller.MpackResponse; import org.apache.ambari.server.controller.spi.NoSuchParentResourceException; import org.apache.ambari.server.controller.spi.NoSuchResourceException; -import org.apache.ambari.server.controller.spi.UnsupportedPropertyException; -import org.apache.ambari.server.controller.spi.SystemException; -import org.apache.ambari.server.controller.spi.Request; import org.apache.ambari.server.controller.spi.Predicate; -import org.apache.ambari.server.controller.spi.ResourceAlreadyExistsException; +import org.apache.ambari.server.controller.spi.Request; +import org.apache.ambari.server.controller.spi.RequestStatus; import org.apache.ambari.server.controller.spi.Resource; -import org.apache.ambari.server.controller.AmbariManagementController; -import org.apache.ambari.server.controller.MpackResponse; -import org.apache.ambari.server.controller.MpackRequest; +import org.apache.ambari.server.controller.spi.ResourceAlreadyExistsException; +import org.apache.ambari.server.controller.spi.SystemException; +import org.apache.ambari.server.controller.spi.UnsupportedPropertyException; import org.apache.ambari.server.controller.utilities.PredicateHelper; import org.apache.ambari.server.controller.utilities.PropertyHelper; import org.apache.ambari.server.orm.dao.MpackDAO; @@ -60,6 +59,7 @@ import org.apache.commons.lang.Validate; import com.google.inject.Inject; + /** * ResourceProvider for Mpack instances */ diff --git a/ambari-server/src/main/java/org/apache/ambari/server/mpack/MpackManager.java b/ambari-server/src/main/java/org/apache/ambari/server/mpack/MpackManager.java index 123b587..6bfacee 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/mpack/MpackManager.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/mpack/MpackManager.java @@ -18,10 +18,6 @@ package org.apache.ambari.server.mpack; -import com.google.gson.Gson; -import com.google.inject.assistedinject.Assisted; -import com.google.inject.assistedinject.AssistedInject; - import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; @@ -34,6 +30,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardCopyOption; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -50,21 +47,18 @@ import org.apache.ambari.server.orm.entities.MpackEntity; import org.apache.ambari.server.orm.entities.StackEntity; import org.apache.ambari.server.state.Module; import org.apache.ambari.server.state.Mpack; -import org.apache.ambari.server.state.StackId; import org.apache.ambari.server.state.stack.StackMetainfoXml; import org.apache.commons.compress.archivers.tar.TarArchiveEntry; - import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; - import org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.HashMap; - - +import com.google.gson.Gson; +import com.google.inject.assistedinject.Assisted; +import com.google.inject.assistedinject.AssistedInject; /** * Manages all mpack related behavior including parsing of stacks and providing access to diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/MpackDAO.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/MpackDAO.java index d0068c2..87e06cb 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/MpackDAO.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/MpackDAO.java @@ -17,19 +17,21 @@ */ package org.apache.ambari.server.orm.dao; -import com.google.inject.Inject; -import com.google.inject.Provider; -import com.google.inject.Singleton; -import com.google.inject.persist.Transactional; +import java.util.List; + +import javax.persistence.EntityManager; +import javax.persistence.TypedQuery; + import org.apache.ambari.server.orm.RequiresSession; import org.apache.ambari.server.orm.entities.MpackEntity; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.persistence.EntityManager; -import javax.persistence.TypedQuery; -import java.util.List; - +import com.google.inject.Inject; +import com.google.inject.Provider; +import com.google.inject.Singleton; +import com.google.inject.persist.Transactional; @Singleton public class MpackDAO { diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/MpackEntity.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/MpackEntity.java index d555f91..f63440d 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/MpackEntity.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/MpackEntity.java @@ -17,20 +17,22 @@ */ package org.apache.ambari.server.orm.entities; -import org.apache.commons.lang.builder.EqualsBuilder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import java.util.Objects; -import javax.persistence.NamedQuery; -import javax.persistence.NamedQueries; -import javax.persistence.Table; +import javax.persistence.Column; import javax.persistence.Entity; -import javax.persistence.TableGenerator; -import javax.persistence.Id; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; -import javax.persistence.Column; -import java.util.Objects; +import javax.persistence.Id; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.persistence.TableGenerator; + +import org.apache.commons.lang.builder.EqualsBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + /** * The {@link MpackEntity} class represents the mpack objects in the cluster. diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java index ca3ff30..aea75dc 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java @@ -140,7 +140,7 @@ public class StackManager { * if an exception occurs while processing the stacks */ @AssistedInject - public StackManager(@Assisted("stackRoot") File stackRootDir, + public StackManager(@Assisted("stackRoot") File stackRoot, @Assisted("commonServicesRoot") @Nullable File commonServicesRoot, @Assisted("extensionRoot") @Nullable File extensionRoot, @Assisted OsFamily osFamily, @Assisted boolean validate, @@ -150,7 +150,6 @@ public class StackManager { LOG.info("Initializing the stack manager..."); - stackRoot = stackRootDir; if (validate) { validateStackDirectory(stackRoot); validateCommonServicesDirectory(commonServicesRoot); diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/Module.java b/ambari-server/src/main/java/org/apache/ambari/server/state/Module.java index 800a9e0..9ceabf2 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/Module.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/Module.java @@ -17,6 +17,7 @@ */ package org.apache.ambari.server.state; +import java.util.HashMap; import java.util.List; import java.util.Objects; @@ -51,6 +52,8 @@ public class Module { @SerializedName("components") private List<ModuleComponent> components; + private HashMap<String, ModuleComponent> componentHashMap; + public Category getCategory() { return category; } @@ -127,6 +130,15 @@ public class Module { this.components = components; } + /** + * Fetch a particular module component by the component name. + * @param moduleComponentName + * @return + */ + public ModuleComponent getModuleComponent(String moduleComponentName) { + return componentHashMap.get(moduleComponentName); + } + @Override public boolean equals(Object o) { @@ -160,4 +172,17 @@ public class Module { ", components=" + components + '}'; } + + /** + * Loads the components into a map (component name, component) for ease of access. + */ + public void populateComponentMap() { + componentHashMap = new HashMap<>(); + for (ModuleComponent moduleComponent : getComponents()){ + // set reverse lookup + moduleComponent.setModule(this); + + componentHashMap.put(moduleComponent.getName(), moduleComponent); + } + } } diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ModuleComponent.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ModuleComponent.java index 56c82af..dc90d3b 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/ModuleComponent.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ModuleComponent.java @@ -17,6 +17,7 @@ */ package org.apache.ambari.server.state; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.google.gson.annotations.SerializedName; public class ModuleComponent { @@ -32,6 +33,12 @@ public class ModuleComponent { @SerializedName("version") private String version; + /** + * The owning module for this module component. + */ + @JsonIgnore + private transient Module module; + public String getId() { return id; } @@ -106,4 +113,8 @@ public class ModuleComponent { ", version='" + version + '\'' + '}'; } + + public void setModule(Module module) { + this.module = module; + } } diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/Mpack.java b/ambari-server/src/main/java/org/apache/ambari/server/state/Mpack.java index 3e76338..766cafb 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/Mpack.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/Mpack.java @@ -17,14 +17,16 @@ */ package org.apache.ambari.server.state; -import com.google.gson.annotations.SerializedName; -import org.apache.commons.lang.StringUtils; -import org.apache.commons.lang.builder.EqualsBuilder; import java.util.HashMap; import java.util.List; import java.util.Objects; +import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.builder.EqualsBuilder; + +import com.google.gson.annotations.SerializedName; + /** * Represents the state of an mpack. */ diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/resources/MpackResourceDefinitionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/resources/MpackResourceDefinitionTest.java index 08166b8..08e6c68 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/api/resources/MpackResourceDefinitionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/api/resources/MpackResourceDefinitionTest.java @@ -20,6 +20,7 @@ package org.apache.ambari.server.api.resources; import static junit.framework.Assert.assertEquals; + import org.junit.Test; /** diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java index 64287d7..ef202ce 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java @@ -18,27 +18,6 @@ package org.apache.ambari.server.api.services; -import org.apache.ambari.server.orm.dao.AlertDefinitionDAO; -import org.apache.ambari.server.orm.dao.MetainfoDAO; -import org.apache.ambari.server.state.AutoDeployInfo; -import org.apache.ambari.server.state.Cluster; -import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.ComponentInfo; -import org.apache.ambari.server.state.CustomCommandDefinition; -import org.apache.ambari.server.state.DependencyInfo; -import org.apache.ambari.server.state.OperatingSystemInfo; -import org.apache.ambari.server.state.PropertyDependencyInfo; -import org.apache.ambari.server.state.PropertyInfo; -import org.apache.ambari.server.state.RepositoryInfo; -import org.apache.ambari.server.state.ServiceInfo; -import org.apache.ambari.server.state.StackId; -import org.apache.ambari.server.state.StackInfo; -import org.apache.ambari.server.state.Packlet; -import org.apache.ambari.server.state.Mpacks; -import org.apache.ambari.server.controller.MpackRequest; -import org.apache.ambari.server.controller.MpackResponse; -import org.apache.ambari.server.mpack.MpackManager; -import org.apache.ambari.server.mpack.MpackManagerFactory; import static org.easymock.EasyMock.createNiceMock; import static org.easymock.EasyMock.expect; import static org.easymock.EasyMock.replay; @@ -53,6 +32,7 @@ import java.io.File; import java.io.FileReader; import java.lang.reflect.Field; import java.util.Collection; +import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; @@ -60,8 +40,6 @@ import java.util.Map; import java.util.Properties; import java.util.Set; import java.util.UUID; -import java.util.HashMap; -import java.util.ArrayList; import javax.persistence.EntityManager; @@ -69,18 +47,38 @@ import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.H2DatabaseCleaner; import org.apache.ambari.server.StackAccessException; import org.apache.ambari.server.configuration.Configuration; +import org.apache.ambari.server.controller.MpackRequest; +import org.apache.ambari.server.controller.MpackResponse; import org.apache.ambari.server.controller.internal.DeleteHostComponentStatusMetaData; import org.apache.ambari.server.controller.spi.Resource; import org.apache.ambari.server.events.publishers.AmbariEventPublisher; import org.apache.ambari.server.metadata.ActionMetadata; import org.apache.ambari.server.metadata.AmbariServiceAlertDefinitions; +import org.apache.ambari.server.mpack.MpackManager; +import org.apache.ambari.server.mpack.MpackManagerFactory; import org.apache.ambari.server.orm.GuiceJpaInitializer; import org.apache.ambari.server.orm.InMemoryDefaultTestModule; import org.apache.ambari.server.orm.OrmTestHelper; +import org.apache.ambari.server.orm.dao.AlertDefinitionDAO; +import org.apache.ambari.server.orm.dao.MetainfoDAO; import org.apache.ambari.server.orm.entities.AlertDefinitionEntity; import org.apache.ambari.server.orm.entities.RepositoryVersionEntity; import org.apache.ambari.server.stack.StackManager; import org.apache.ambari.server.stack.StackManagerFactory; +import org.apache.ambari.server.state.AutoDeployInfo; +import org.apache.ambari.server.state.Cluster; +import org.apache.ambari.server.state.Clusters; +import org.apache.ambari.server.state.ComponentInfo; +import org.apache.ambari.server.state.CustomCommandDefinition; +import org.apache.ambari.server.state.DependencyInfo; +import org.apache.ambari.server.state.Mpack; +import org.apache.ambari.server.state.OperatingSystemInfo; +import org.apache.ambari.server.state.PropertyDependencyInfo; +import org.apache.ambari.server.state.PropertyInfo; +import org.apache.ambari.server.state.RepositoryInfo; +import org.apache.ambari.server.state.ServiceInfo; +import org.apache.ambari.server.state.StackId; +import org.apache.ambari.server.state.StackInfo; import org.apache.ambari.server.state.alert.AlertDefinition; import org.apache.ambari.server.state.alert.AlertDefinitionFactory; import org.apache.ambari.server.state.alert.MetricSource; @@ -354,13 +352,12 @@ public class AmbariMetaInfoTest { public void testRegisterMpacks() throws Exception{ MpackManager mm = metaInfo.getMpackManager(); MpackRequest mpackRequest = createNiceMock(MpackRequest.class); - Mpacks mpacks = new Mpacks(); - mpacks.setMpackId((long)100); - mpacks.setPacklets(new ArrayList<Packlet>()); + Mpack mpacks = new Mpack(); + mpacks.setMpackId("100"); mpacks.setPrerequisites(new HashMap<String, String>()); mpacks.setRegistryId(new Long(100)); mpacks.setVersion("3.0"); - mpacks.setMpacksUri("abc.tar.gz"); + mpacks.setMpackUri("abc.tar.gz"); mpacks.setDescription("Test mpacks"); mpacks.setName("testMpack"); MpackResponse mpackResponse = new MpackResponse(mpacks); diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpackServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpackServiceTest.java deleted file mode 100644 index 06eb15d..0000000 --- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpackServiceTest.java +++ /dev/null @@ -1,94 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.ambari.server.api.services; - -import org.apache.ambari.server.api.resources.ResourceInstance; -import org.apache.ambari.server.api.services.parsers.RequestBodyParser; -import org.apache.ambari.server.api.services.serializers.ResultSerializer; - -import org.apache.ambari.server.api.util.ApiVersion; -import org.apache.ambari.server.controller.spi.Resource; - - -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.UriInfo; -import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -/** - * Unit tests for MpackService - */ -public class MpackServiceTest extends BaseServiceTest{ - @Override - public List<BaseServiceTest.ServiceTestInvocation> getTestInvocations() throws Exception { - List<BaseServiceTest.ServiceTestInvocation> listInvocations = new ArrayList<>(); - - // getMpacks - MpacksService service = new TestMpackService("null"); - Method m = service.getClass().getMethod("getMpacks", String.class, HttpHeaders.class, UriInfo.class); - Object[] args = new Object[]{null, getHttpHeaders(), getUriInfo()}; - listInvocations.add(new ServiceTestInvocation(Request.Type.GET, service, m, args, null)); - - // getMpack - service = new TestMpackService("1"); - m = service.getClass().getMethod("getMpack", String.class, HttpHeaders.class, UriInfo.class, String.class); - args = new Object[]{null, getHttpHeaders(), getUriInfo(), ""}; - listInvocations.add(new ServiceTestInvocation(Request.Type.GET, service, m, args, null)); - - //createMpacks - service = new TestMpackService(null); - m = service.getClass().getMethod("createMpacks", String.class, HttpHeaders.class, UriInfo.class); - args = new Object[]{"body", getHttpHeaders(), getUriInfo()}; - listInvocations.add(new ServiceTestInvocation(Request.Type.POST, service, m, args, "body")); - - return listInvocations; - } - private class TestMpackService extends MpacksService { - - private String m_mpackId; - - private TestMpackService(String mpackId) { - super(ApiVersion.Default); - m_mpackId = mpackId; - } - - @Override - protected ResourceInstance createResource(Resource.Type type, Map<Resource.Type, String> mapIds) { - return getTestResource(); - } - - @Override - RequestFactory getRequestFactory() { - return getTestRequestFactory(); - } - - @Override - protected RequestBodyParser getBodyParser() { - return getTestBodyParser(); - } - - @Override - protected ResultSerializer getResultSerializer() { - return getTestResultSerializer(); - } - } - - -} diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java index 1e06d18..ad7bdb3 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java @@ -24,29 +24,7 @@ import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.JAVA_VERS import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.NOT_MANAGED_HDFS_PATH_LIST; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_NAME; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_VERSION; -import org.apache.ambari.server.controller.spi.Resource; -import org.apache.ambari.server.security.authorization.Users; -import org.apache.ambari.server.state.Cluster; -import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.ComponentInfo; -import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigHelper; -import org.apache.ambari.server.state.DesiredConfig; -import org.apache.ambari.server.state.Host; -import org.apache.ambari.server.state.MaintenanceState; -import org.apache.ambari.server.state.PropertyInfo; -import org.apache.ambari.server.state.RepositoryInfo; -import org.apache.ambari.server.state.RepositoryVersionState; -import org.apache.ambari.server.state.SecurityType; -import org.apache.ambari.server.state.Service; -import org.apache.ambari.server.state.ServiceComponent; -import org.apache.ambari.server.state.ServiceComponentHost; -import org.apache.ambari.server.state.ServiceInfo; -import org.apache.ambari.server.state.ServiceOsSpecific; -import org.apache.ambari.server.state.StackId; -import org.apache.ambari.server.state.StackInfo; -import org.apache.ambari.server.state.State; -import org.apache.ambari.server.state.Mpack; + import static org.easymock.EasyMock.anyBoolean; import static org.easymock.EasyMock.anyLong; import static org.easymock.EasyMock.anyObject; @@ -98,10 +76,12 @@ import org.apache.ambari.server.agent.stomp.MetadataHolder; import org.apache.ambari.server.api.services.AmbariMetaInfo; import org.apache.ambari.server.configuration.Configuration; import org.apache.ambari.server.controller.internal.RequestStageContainer; +import org.apache.ambari.server.controller.spi.Resource; import org.apache.ambari.server.orm.InMemoryDefaultTestModule; import org.apache.ambari.server.orm.dao.RepositoryVersionDAO; import org.apache.ambari.server.orm.entities.LdapSyncSpecEntity; import org.apache.ambari.server.orm.entities.RepositoryVersionEntity; +import org.apache.ambari.server.security.authorization.Users; import org.apache.ambari.server.security.authorization.internal.InternalAuthenticationToken; import org.apache.ambari.server.security.encryption.CredentialStoreService; import org.apache.ambari.server.security.encryption.CredentialStoreType; @@ -2457,7 +2437,7 @@ public class AmbariManagementControllerImplTest { mpack.setPrerequisites(new HashMap<String, String>()); mpack.setRegistryId(new Long(100)); mpack.setVersion("3.0"); - mpack.setMpacksUri("abc.tar.gz"); + mpack.setMpackUri("abc.tar.gz"); mpack.setDescription("Test mpack"); mpack.setName("testMpack"); MpackResponse mpackResponse = new MpackResponse(mpack); diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackRequestTest.java index 630fb15..9a518a4 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackRequestTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackRequestTest.java @@ -18,8 +18,8 @@ package org.apache.ambari.server.controller; -import org.junit.Test; import org.junit.Assert; +import org.junit.Test; /** * Unit tests for MpackRequest diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackResponseTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackResponseTest.java index 3ef98c6..4572f57 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackResponseTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/MpackResponseTest.java @@ -25,9 +25,6 @@ import org.apache.ambari.server.state.Module; import org.apache.ambari.server.state.Mpack; import org.junit.Assert; import org.junit.Test; -import org.junit.Assert; -import java.util.ArrayList; -import java.util.HashMap; /** * Unit tests for MpackResponse diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java index 0ed8fba..2c126d9 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java @@ -838,7 +838,7 @@ public class AbstractResourceProviderTest { public static class TestResourceProvider extends AbstractResourceProvider { protected TestResourceProvider() { - super(propertyIds, keyPropertyIds); + super(propertyIds, AbstractResourceProviderTest.keyPropertyIds); } @Override diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterControllerImplTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterControllerImplTest.java index 686b5cd..0238617 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterControllerImplTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterControllerImplTest.java @@ -1159,7 +1159,7 @@ public class ClusterControllerImplTest { private static class TestStackVersionResourceProvider extends TestResourceProvider { private TestStackVersionResourceProvider() { - super(StackVersionResourceProvider.propertyIds, StackVersionResourceProvider.keyPropertyIds); + super(StackVersionResourceProvider.PROPERTY_IDS, StackVersionResourceProvider.KEY_PROPERTY_IDS); } @Override diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java index f453684..dbe2ca4 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java @@ -17,8 +17,7 @@ */ package org.apache.ambari.server.controller.internal; -import com.google.inject.util.Modules; -import org.apache.ambari.server.state.Module; + import static org.easymock.EasyMock.createMock; import static org.easymock.EasyMock.replay; import static org.easymock.EasyMock.verify; @@ -31,44 +30,32 @@ import java.util.List; import java.util.Map; import java.util.Set; - -import com.google.inject.Injector; -import com.google.inject.Binder; -import com.google.inject.Guice; +import javax.persistence.EntityManager; import org.apache.ambari.server.controller.AmbariManagementController; +import org.apache.ambari.server.controller.MpackRequest; import org.apache.ambari.server.controller.MpackResponse; +import org.apache.ambari.server.controller.spi.Predicate; +import org.apache.ambari.server.controller.spi.Request; import org.apache.ambari.server.controller.spi.Resource; import org.apache.ambari.server.controller.spi.ResourceProvider; -import org.apache.ambari.server.controller.spi.Request; -import org.apache.ambari.server.controller.spi.Predicate; -import org.apache.ambari.server.controller.MpackRequest; -import org.apache.ambari.server.controller.utilities.*; +import org.apache.ambari.server.controller.utilities.PredicateBuilder; +import org.apache.ambari.server.controller.utilities.PropertyHelper; import org.apache.ambari.server.orm.InMemoryDefaultTestModule; import org.apache.ambari.server.orm.dao.MpackDAO; import org.apache.ambari.server.orm.entities.MpackEntity; +import org.apache.ambari.server.state.Module; import org.apache.ambari.server.state.Mpack; import org.easymock.EasyMock; -import static org.easymock.EasyMock.replay; -import static org.easymock.EasyMock.createMock; -import static org.easymock.EasyMock.verify; -import org.junit.Test; import org.junit.Assert; import org.junit.Before; +import org.junit.Test; import com.google.inject.Binder; import com.google.inject.Guice; import com.google.inject.Injector; - - -import javax.persistence.EntityManager; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.HashMap; -import java.util.Map; -import java.util.Set; -import java.util.List; +import com.google.inject.util.Modules; public class MpackResourceProviderTest { @@ -271,7 +258,7 @@ public class MpackResourceProviderTest { mpack.setPrerequisites(new HashMap<String, String>()); mpack.setRegistryId(new Long(100)); mpack.setVersion("3.0"); - mpack.setMpacksUri("../../../../../../../resources/mpacks-v2/abc.tar.gz"); + mpack.setMpackUri("../../../../../../../resources/mpacks-v2/abc.tar.gz"); mpack.setDescription("Test mpack"); mpack.setName("testMpack"); diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/MpackDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/MpackDAOTest.java index f589fe8..c56ff93 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/MpackDAOTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/MpackDAOTest.java @@ -17,19 +17,23 @@ */ package org.apache.ambari.server.orm.dao; -import com.google.inject.Injector; -import com.google.inject.Guice; -import org.apache.ambari.server.orm.entities.MpackEntity; -import org.junit.Before; -import org.junit.Test; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -import org.apache.ambari.server.orm.InMemoryDefaultTestModule; + +import java.util.ArrayList; +import java.util.List; + import org.apache.ambari.server.orm.GuiceJpaInitializer; +import org.apache.ambari.server.orm.InMemoryDefaultTestModule; +import org.apache.ambari.server.orm.entities.MpackEntity; +import org.junit.Before; +import org.junit.Test; + +import com.google.inject.Guice; +import com.google.inject.Injector; import com.google.inject.persist.UnitOfWork; -import java.util.List; -import java.util.ArrayList; /** * Tests {@link MpackDAO}. diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/MpackEntityTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/MpackEntityTest.java index 4677837..d2d2476 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/MpackEntityTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/MpackEntityTest.java @@ -18,11 +18,11 @@ package org.apache.ambari.server.orm.entities; -import org.junit.Test; -import org.junit.Assert; - import java.util.Objects; +import org.junit.Assert; +import org.junit.Test; + /** * Tests methods on {@link MpackEntity}. */ diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/MpackTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/MpackTest.java index e478968..2096dde 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/state/MpackTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/state/MpackTest.java @@ -33,13 +33,13 @@ public class MpackTest { mpack.setResourceId((long)100); mpack.setDescription("desc"); mpack.setVersion("3.0"); - mpack.setMpacksUri("abc.tar.gz"); + mpack.setMpackUri("abc.tar.gz"); mpack.setRegistryId(new Long(100)); Assert.assertEquals("name", mpack.getName()); Assert.assertEquals(new Long(100), mpack.getResourceId()); Assert.assertEquals("desc", mpack.getDescription()); - Assert.assertEquals("abc.tar.gz", mpack.getMpacksUri()); + Assert.assertEquals("abc.tar.gz", mpack.getMpackUri()); Assert.assertEquals(new Long(100), mpack.getRegistryId()); } diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/MpacksTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/MpacksTest.java deleted file mode 100644 index 6d87a60..0000000 --- a/ambari-server/src/test/java/org/apache/ambari/server/state/MpacksTest.java +++ /dev/null @@ -1,95 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.ambari.server.state; - -import com.google.gson.Gson; -import org.junit.Test; -import org.junit.Assert; - -import java.util.ArrayList; -import java.util.HashMap; - -public class MpacksTest { - @Test - public void testMpacks() { - Mpacks mpacks = new Mpacks(); - mpacks.setName("name"); - mpacks.setMpackId((long)100); - mpacks.setDescription("desc"); - mpacks.setVersion("3.0"); - mpacks.setMpacksUri("abc.tar.gz"); - mpacks.setRegistryId(new Long(100)); - - Assert.assertEquals("name", mpacks.getName()); - Assert.assertEquals(new Long(100), mpacks.getMpackId()); - Assert.assertEquals("desc", mpacks.getDescription()); - Assert.assertEquals("abc.tar.gz", mpacks.getMpacksUri()); - Assert.assertEquals(new Long(100), mpacks.getRegistryId()); - - } - - @Test - public void testMpacksUsingGson() { - String mpackJsonContents = "{\n" + - " \"name\" : \"hdf-ambari-mpack\",\n" + - " \"version\": \"3.0.0.0-111\",\n" + - " \"description\" : \"HDF 3.0.0 Ambari Management Pack\",\n" + - " \"prerequisites\": {\n" + - " \"min-ambari-version\" : \"3.0.0.0\"\n" + - " },\n" + - " \"packlets\": [\n" + - " {\n" + - " \"type\" : \"service-packlet\",\n" + - " \"name\" : \"NIFI\",\n" + - " \"version\" : \"1.2.0.0-123\",\n" + - " \"source_dir\": \"packlets/NIFI-1.2.0.0-123.tar.gz\"\n" + - " },\n" + - " {\n" + - " \"type\" : \"service-packlet\",\n" + - " \"name\" : \"STREAMLINE\",\n" + - " \"version\" : \"1.0.0.0-100\",\n" + - " \"source_dir\": \"packlets/STREAMLINE-1.0.0.0-100.tar.gz\"\n" + - " }\n" + - " ]\n" + - "}\n"; - HashMap<String, String> expectedPrereq = new HashMap<>(); - expectedPrereq.put("min-ambari-version","3.0.0.0"); - ArrayList<Packlet> expectedPacklets = new ArrayList<>(); - Packlet nifi = new Packlet(); - nifi.setType("service-packlet"); - nifi.setVersion("1.2.0.0-123"); - nifi.setSourceDir("packlets/NIFI-1.2.0.0-123.tar.gz"); - nifi.setName("NIFI"); - Packlet streamline = new Packlet(); - streamline.setName("STREAMLINE"); - streamline.setType("service-packlet"); - streamline.setSourceDir("packlets/STREAMLINE-1.0.0.0-100.tar.gz"); - streamline.setVersion("1.0.0.0-100"); - expectedPacklets.add(nifi); - expectedPacklets.add(streamline); - - Gson gson = new Gson(); - Mpacks mpacks = gson.fromJson(mpackJsonContents, Mpacks.class); - Assert.assertEquals("hdf-ambari-mpack",mpacks.getName()); - Assert.assertEquals("3.0.0.0-111", mpacks.getVersion()); - Assert.assertEquals("HDF 3.0.0 Ambari Management Pack",mpacks.getDescription()); - Assert.assertEquals(expectedPrereq, mpacks.getPrerequisites()); - Assert.assertEquals(expectedPacklets.toString(), mpacks.getPacklets().toString()); - } - -} diff --git a/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/AbstractResourceProviderTest.java b/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/AbstractResourceProviderTest.java index dc5999b..ed77855 100644 --- a/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/AbstractResourceProviderTest.java +++ b/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/AbstractResourceProviderTest.java @@ -18,17 +18,12 @@ package org.apache.ambari.msi; + import org.apache.ambari.scom.TestClusterDefinitionProvider; import org.apache.ambari.scom.TestHostInfoProvider; -import org.apache.ambari.server.controller.spi.Resource; -import org.apache.ambari.server.controller.spi.ResourceProvider; -import org.apache.ambari.server.controller.utilities.PropertyHelper; import org.junit.Assert; import org.junit.Test; -import java.util.HashSet; -import java.util.Set; - /** * AbstractResourceProvider tests. */
