mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
ExternalUUID control: enforce checking uuid validity by defining checkUUID method in the corresponding absract class, and performing the check during API command dispatching
This commit is contained in:
parent
e5335cd6e4
commit
7cb4b571c8
@ -27,6 +27,6 @@ public abstract class BaseAsyncCustomIdCmd extends BaseAsyncCmd {
|
||||
return customId;
|
||||
}
|
||||
|
||||
public abstract void checkUuid(String id, Class<?> cls);
|
||||
public abstract void checkUuid();
|
||||
|
||||
}
|
||||
|
||||
@ -27,6 +27,6 @@ public abstract class BaseCustomIdCmd extends BaseCmd {
|
||||
return customId;
|
||||
}
|
||||
|
||||
public abstract void checkUuid(String id, Class<?> cls);
|
||||
public abstract void checkUuid();
|
||||
|
||||
}
|
||||
|
||||
@ -155,7 +155,7 @@ public class UpdateAutoScaleVmGroupCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), AutoScaleVmGroup.class);
|
||||
}
|
||||
|
||||
@ -147,7 +147,7 @@ public class UpdateAutoScaleVmProfileCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), AutoScaleVmProfile.class);
|
||||
}
|
||||
|
||||
@ -174,7 +174,7 @@ public class UpdateNetworkACLItemCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), NetworkACLItem.class);
|
||||
}
|
||||
|
||||
@ -190,7 +190,7 @@ public class UpdateNetworkCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), Network.class);
|
||||
}
|
||||
|
||||
@ -148,7 +148,7 @@ public class UpdateVMCmd extends BaseCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), UserVm.class);
|
||||
|
||||
|
||||
@ -150,7 +150,7 @@ public class UpdateVolumeCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), Volume.class);
|
||||
}
|
||||
|
||||
@ -115,7 +115,7 @@ public class UpdateVPCCmd extends BaseAsyncCustomIdCmd {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkUuid(String id, Class<?> cls) {
|
||||
public void checkUuid() {
|
||||
if (this.getCustomId() != null) {
|
||||
_uuidMgr.checkUuid(this.getCustomId(), Vpc.class);
|
||||
}
|
||||
|
||||
@ -21,14 +21,16 @@ import java.util.Map;
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.inject.Inject;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseAsyncCmd;
|
||||
import org.apache.cloudstack.api.BaseAsyncCreateCmd;
|
||||
import org.apache.cloudstack.api.BaseAsyncCustomIdCmd;
|
||||
import org.apache.cloudstack.api.BaseCmd;
|
||||
import org.apache.cloudstack.api.BaseCustomIdCmd;
|
||||
import org.apache.cloudstack.context.CallContext;
|
||||
import org.apache.cloudstack.framework.jobs.AsyncJob;
|
||||
import org.apache.cloudstack.framework.jobs.AsyncJobManager;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.cloud.api.dispatch.DispatchChain;
|
||||
import com.cloud.api.dispatch.DispatchChainFactory;
|
||||
@ -97,6 +99,13 @@ public class ApiDispatcher {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (cmd instanceof BaseAsyncCustomIdCmd) {
|
||||
((BaseAsyncCustomIdCmd)cmd).checkUuid();
|
||||
} else if (cmd instanceof BaseCustomIdCmd) {
|
||||
((BaseCustomIdCmd)cmd).checkUuid();
|
||||
}
|
||||
|
||||
cmd.execute();
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user