package org.ovirt.engine.core.vdsbroker.gluster;
import java.util.Objects;
import org.ovirt.engine.core.common.vdscommands.gluster.CreateGlusterVolumeSnapshotVDSParameters;
import org.ovirt.engine.core.vdsbroker.vdsbroker.Status;
public class CreateGlusterVolumeSnapshotVDSCommand<P extends CreateGlusterVolumeSnapshotVDSParameters> extends AbstractGlusterBrokerCommand<P> {
private GlusterVolumeSnapshotCreateReturn returnValue;
public CreateGlusterVolumeSnapshotVDSCommand(P params) {
super(params);
}
@Override
protected Status getReturnStatus() {
return returnValue.getStatus();
}
@Override
protected void executeVdsBrokerCommand() {
String volumeName = getParameters().getVolumeName();
String snapshotName = getParameters().getSnapshotName();
String description = Objects.toString(getParameters().getDescription(), "");
boolean force = getParameters().getForce();
returnValue = getBroker().glusterVolumeSnapshotCreate(volumeName, snapshotName, description, force);
proceedProxyReturnValue();
if (getVDSReturnValue().getSucceeded()) {
setReturnValue(returnValue.getSnapshot());
}
}
}