GutoVeronezi commented on a change in pull request #5997:
URL: https://github.com/apache/cloudstack/pull/5997#discussion_r812960973
##########
File path:
plugins/network-elements/ovs/src/main/java/com/cloud/network/guru/OvsGuestNetworkGuru.java
##########
@@ -17,6 +17,12 @@
package com.cloud.network.guru;
+import javax.inject.Inject;
+
+import org.apache.cloudstack.context.CallContext;
+import org.apache.log4j.Logger;
+import org.springframework.stereotype.Component;
Review comment:
Is this reordering necessary?
##########
File path: api/src/main/java/org/apache/cloudstack/api/ApiCommandJobType.java
##########
@@ -54,5 +66,89 @@
GuestOs,
GuestOsMapping,
Network,
- Management
+ Management,
+ KubernetesCluster;
+
+ public static Class<?> getTypeClass(ApiCommandJobType type) {
+ switch (type) {
+ case VirtualMachine:
+ return VirtualMachine.class;
+ case DomainRouter:
+ case InternalLbVm:
+ return VirtualRouter.class;
+ case Volume:
+ return com.cloud.storage.Volume.class;
+ case ConsoleProxy:
+ return com.cloud.vm.ConsoleProxy.class;
+ case Snapshot:
+ return com.cloud.storage.Snapshot.class;
+ case Backup:
+ return org.apache.cloudstack.backup.Backup.class;
+ case Template:
+ case Iso:
+ return VirtualMachineTemplate.class;
+ case SystemVm:
+ return com.cloud.vm.SystemVm.class;
+ case Host:
+ return com.cloud.host.Host.class;
+ case StoragePool:
+ return com.cloud.storage.StoragePool.class;
+ case ImageStore:
+ return com.cloud.storage.ImageStore.class;
+ case IpAddress:
+ return com.cloud.network.IpAddress.class;
+ case PortableIpAddress:
+ return PortableIp.class;
+ case SecurityGroup:
+ return com.cloud.network.security.SecurityGroup.class;
+ case PhysicalNetwork:
+ return com.cloud.network.PhysicalNetwork.class;
+ case TrafficType:
+ return Networks.TrafficType.class;
+ case PhysicalNetworkServiceProvider:
+ return com.cloud.network.PhysicalNetworkServiceProvider.class;
+ case FirewallRule:
+ return com.cloud.network.rules.FirewallRule.class;
+ case Account:
+ return com.cloud.user.Account.class;
+ case User:
+ return com.cloud.user.User.class;
+ case PrivateGateway:
+ return com.cloud.network.vpc.PrivateGateway.class;
+ case StaticRoute:
+ return com.cloud.network.vpc.StaticRoute.class;
+ case Counter:
+ return com.cloud.network.as.Counter.class;
+ case Condition:
+ return com.cloud.network.as.Condition.class;
+ case AutoScalePolicy:
+ return com.cloud.network.as.AutoScalePolicy.class;
+ case AutoScaleVmProfile:
+ return com.cloud.network.as.AutoScaleVmProfile.class;
+ case AutoScaleVmGroup:
+ return com.cloud.network.as.AutoScaleVmGroup.class;
+ case GlobalLoadBalancerRule:
+ return com.cloud.region.ha.GlobalLoadBalancerRule.class;
+ case LoadBalancerRule:
+ return LoadBalancingRule.class;
+ case AffinityGroup:
+ return org.apache.cloudstack.affinity.AffinityGroup.class;
+ case DedicatedGuestVlanRange:
+ return GuestVlan.class;
+ case GuestOs:
+ return GuestOS.class;
+ case GuestOsMapping:
+ return GuestOSHypervisor.class;
+ case Network:
+ return com.cloud.network.Network.class;
+ }
Review comment:
We could create a static `Map<ApiCommandJobType, Class<?>>` instead of a
long `switch-case`. It would increase the readability and facilitate unit tests.
##########
File path:
server/src/main/java/com/cloud/network/guru/ExternalGuestNetworkGuru.java
##########
@@ -17,6 +17,14 @@
package com.cloud.network.guru;
+import java.util.List;
+
+import javax.inject.Inject;
+
+import org.apache.cloudstack.context.CallContext;
+import
org.apache.cloudstack.engine.orchestration.service.NetworkOrchestrationService;
+import org.apache.log4j.Logger;
Review comment:
Is this reordering necessary?
##########
File path:
server/src/main/java/com/cloud/storage/snapshot/SnapshotManagerImpl.java
##########
@@ -60,7 +61,10 @@
import org.apache.cloudstack.storage.datastore.db.SnapshotDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.SnapshotDataStoreVO;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
+import
org.apache.cloudstack.utils.reflectiontostringbuilderutils.ReflectionToStringBuilderUtils;
import org.apache.commons.collections.MapUtils;
+import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
Review comment:
Is this reordering necessary?
##########
File path:
server/src/main/java/org/apache/cloudstack/outofbandmanagement/OutOfBandManagementServiceImpl.java
##########
@@ -16,6 +16,36 @@
// under the License.
package org.apache.cloudstack.outofbandmanagement;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ArrayBlockingQueue;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
+
+import javax.inject.Inject;
+import javax.naming.ConfigurationException;
+
+import org.apache.cloudstack.api.ApiCommandJobType;
+import org.apache.cloudstack.api.response.OutOfBandManagementResponse;
+import org.apache.cloudstack.context.CallContext;
+import org.apache.cloudstack.framework.config.ConfigKey;
+import org.apache.cloudstack.framework.config.Configurable;
+import org.apache.cloudstack.managed.context.ManagedContextRunnable;
+import org.apache.cloudstack.outofbandmanagement.dao.OutOfBandManagementDao;
+import
org.apache.cloudstack.outofbandmanagement.driver.OutOfBandManagementDriverChangePasswordCommand;
+import
org.apache.cloudstack.outofbandmanagement.driver.OutOfBandManagementDriverPowerCommand;
+import
org.apache.cloudstack.outofbandmanagement.driver.OutOfBandManagementDriverResponse;
+import org.apache.cloudstack.poll.BackgroundPollManager;
+import org.apache.cloudstack.poll.BackgroundPollTask;
+import org.apache.cloudstack.utils.identity.ManagementServerNode;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.log4j.Logger;
+import org.springframework.stereotype.Component;
Review comment:
Is this reordering necessary?
##########
File path: server/src/main/java/com/cloud/event/dao/EventJoinDaoImpl.java
##########
@@ -85,7 +91,15 @@ public EventResponse newEventResponse(EventJoinVO event) {
responseEvent.setParentId(event.getStartUuid());
responseEvent.setState(event.getState());
responseEvent.setUsername(event.getUserName());
-
+ Long resourceId = event.getResourceId();
+ Class<?> clazz =
ApiCommandJobType.getTypeClass(event.getResourceType());
+ if (resourceId != null && clazz != null ) {
Review comment:
We can use `ObjectUtils#allNotNull` here.
##########
File path:
server/src/main/java/com/cloud/resource/RollingMaintenanceManagerImpl.java
##########
@@ -16,6 +16,29 @@
// under the License.
package com.cloud.resource;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import javax.inject.Inject;
+import javax.naming.ConfigurationException;
+
+import org.apache.cloudstack.affinity.AffinityGroupProcessor;
+import org.apache.cloudstack.api.ApiCommandJobType;
+import org.apache.cloudstack.api.command.admin.cluster.UpdateClusterCmd;
+import org.apache.cloudstack.api.command.admin.host.PrepareForMaintenanceCmd;
+import
org.apache.cloudstack.api.command.admin.resource.StartRollingMaintenanceCmd;
+import org.apache.cloudstack.context.CallContext;
+import org.apache.cloudstack.framework.config.ConfigKey;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.log4j.Logger;
Review comment:
Is this reordering necessary?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]