This is an automated email from the ASF dual-hosted git repository. pearl11594 pushed a commit to branch nsx-integration in repository https://gitbox.apache.org/repos/asf/cloudstack.git
commit 937b34b200d41b7bfc86ebb2aeae79a5fa60630a Author: Pearl Dsilva <[email protected]> AuthorDate: Thu Aug 24 12:19:10 2023 -0400 update response and add license --- .../java/org/apache/cloudstack/api/ApiConstants.java | 2 ++ .../apache/cloudstack/agent/api/StartupNsxCommand.java | 16 ++++++++++++++++ .../cloudstack/api/command/DeleteNsxControllerCmd.java | 2 +- .../cloudstack/api/response/NsxControllerResponse.java | 11 +++++++++++ .../apache/cloudstack/service/NsxControllerUtils.java | 16 ++++++++++++++++ .../cloudstack/service/NsxProviderServiceImpl.java | 4 ++++ 6 files changed, 50 insertions(+), 1 deletion(-) diff --git a/api/src/main/java/org/apache/cloudstack/api/ApiConstants.java b/api/src/main/java/org/apache/cloudstack/api/ApiConstants.java index 80478a126de..80133ff931f 100644 --- a/api/src/main/java/org/apache/cloudstack/api/ApiConstants.java +++ b/api/src/main/java/org/apache/cloudstack/api/ApiConstants.java @@ -810,7 +810,9 @@ public class ApiConstants { public static final String NICIRA_NVP_L2_GATEWAYSERVICE_UUID = "l2gatewayserviceuuid"; public static final String NSX_LOGICAL_SWITCH = "nsxlogicalswitch"; public static final String NSX_LOGICAL_SWITCH_PORT = "nsxlogicalswitchport"; + public static final String NSX_PROVIDER_UUID = "nsxprovideruuid"; public static final String NSX_PROVIDER_HOSTNAME = "nsxproviderhostname"; + public static final String NSX_PROVIDER_PORT = "nsxproviderport"; public static final String NSX_CONTROLLER_ID = "nsxcontrollerid"; public static final String S3_ACCESS_KEY = "accesskey"; diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/agent/api/StartupNsxCommand.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/agent/api/StartupNsxCommand.java index 193b245c562..22deacca354 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/agent/api/StartupNsxCommand.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/agent/api/StartupNsxCommand.java @@ -1,3 +1,19 @@ +// 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.cloudstack.agent.api; import com.cloud.agent.api.StartupCommand; diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java index ba5f3f5fcfe..960beb52447 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java @@ -33,7 +33,7 @@ import javax.inject.Inject; import static org.apache.cloudstack.api.command.DeleteNsxControllerCmd.APINAME; -@APICommand(name = APINAME, description = "Add NSX Controller to CloudStack", +@APICommand(name = APINAME, description = "delete NSX Controller to CloudStack", responseObject = NsxControllerResponse.class, requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, since = "4.19.0.0") public class DeleteNsxControllerCmd extends BaseCmd { diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/response/NsxControllerResponse.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/response/NsxControllerResponse.java index e7cf8c1ea22..8b574c3d970 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/response/NsxControllerResponse.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/response/NsxControllerResponse.java @@ -25,6 +25,9 @@ import org.apache.cloudstack.api.EntityReference; @EntityReference(value = {NsxProvider.class}) public class NsxControllerResponse extends BaseResponse { + @SerializedName(ApiConstants.NSX_PROVIDER_UUID) + @Param(description = "NSX controller ID") + private String uuid; @SerializedName(ApiConstants.NAME) @Param(description = "NSX controller name") private String name; @@ -57,6 +60,14 @@ public class NsxControllerResponse extends BaseResponse { @Param(description = "The name of the edge cluster. An edge cluster is a logical grouping of edge nodes in NSX") private String edgeCluster; + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + public String getName() { return name; } diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxControllerUtils.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxControllerUtils.java index 8312835a9fd..24261d0f9e3 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxControllerUtils.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxControllerUtils.java @@ -1,3 +1,19 @@ +// 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.cloudstack.service; import com.cloud.agent.AgentManager; diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxProviderServiceImpl.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxProviderServiceImpl.java index a99846efac3..9aac12fda8c 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxProviderServiceImpl.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxProviderServiceImpl.java @@ -34,6 +34,7 @@ import com.cloud.resource.ResourceManager; import com.cloud.utils.db.Transaction; import com.cloud.utils.db.TransactionCallback; import com.cloud.utils.exception.CloudRuntimeException; +import org.apache.cloudstack.api.command.DeleteNsxControllerCmd; import org.apache.cloudstack.api.command.ListNsxControllersCmd; import org.apache.cloudstack.api.BaseResponse; import org.apache.cloudstack.api.command.AddNsxControllerCmd; @@ -126,12 +127,14 @@ public class NsxProviderServiceImpl implements NsxProviderService { } NsxControllerResponse response = new NsxControllerResponse(); response.setName(nsxProvider.getProviderName()); + response.setUuid(nsxProvider.getUuid()); response.setHostname(nsxProvider.getHostname()); response.setPort(nsxProvider.getPort()); response.setZoneId(nsxProvider.getZoneId()); response.setZoneName(zone.getName()); response.setTier0Gateway(nsxProvider.getTier0Gateway()); response.setTier0Gateway(nsxProvider.getEdgeCluster()); + response.setObjectName("nsxController"); return response; } @@ -184,6 +187,7 @@ public class NsxProviderServiceImpl implements NsxProviderService { List<Class<?>> cmdList = new ArrayList<Class<?>>(); cmdList.add(AddNsxControllerCmd.class); cmdList.add(ListNsxControllersCmd.class); + cmdList.add(DeleteNsxControllerCmd.class); return cmdList; } }
