use of com.zimbra.cs.volume.VolumeManager in project zm-mailbox by Zimbra.
the class DeleteVolume method redo.
@Override
public void redo() throws Exception {
VolumeManager mgr = VolumeManager.getInstance();
try {
// make sure it exists
mgr.getVolume(mId);
mgr.delete(mId, getUnloggedReplay());
} catch (VolumeServiceException e) {
if (e.getCode() != VolumeServiceException.NO_SUCH_VOLUME) {
throw e;
}
}
}
use of com.zimbra.cs.volume.VolumeManager in project zm-mailbox by Zimbra.
the class ModifyVolume method handle.
private ModifyVolumeResponse handle(ModifyVolumeRequest req, Map<String, Object> ctx) throws ServiceException {
ZimbraSoapContext zsc = getZimbraSoapContext(ctx);
checkRight(zsc, ctx, Provisioning.getInstance().getLocalServer(), Admin.R_manageVolume);
VolumeManager mgr = VolumeManager.getInstance();
Volume.Builder builder = Volume.builder(mgr.getVolume(req.getId()));
VolumeInfo vol = req.getVolume();
if (vol == null) {
throw ServiceException.INVALID_REQUEST("must specify a volume Element", null);
}
if (vol.getType() > 0) {
builder.setType(vol.getType());
}
if (vol.getName() != null) {
builder.setName(vol.getName());
}
if (vol.getRootPath() != null) {
builder.setPath(vol.getRootPath(), true);
}
if (vol.getCompressBlobs() != null) {
builder.setCompressBlobs(vol.getCompressBlobs());
}
if (vol.getCompressionThreshold() > 0) {
builder.setCompressionThreshold(vol.getCompressionThreshold());
}
mgr.update(builder.build());
return new ModifyVolumeResponse();
}
use of com.zimbra.cs.volume.VolumeManager in project zm-mailbox by Zimbra.
the class ModifyVolume method redo.
@Override
public void redo() throws Exception {
VolumeManager mgr = VolumeManager.getInstance();
// make sure it exists
mgr.getVolume(id);
Volume vol = Volume.builder().setId(id).setType(type).setName(name).setPath(rootPath, false).setMboxGroupBits(mboxGroupBits).setMboxBit(mboxBits).setFileGroupBits(fileGroupBits).setFileBits(fileBits).setCompressBlobs(compressBlobs).setCompressionThreshold(compressionThreshold).build();
mgr.update(vol, getUnloggedReplay());
}
use of com.zimbra.cs.volume.VolumeManager in project zm-mailbox by Zimbra.
the class DeleteVolume method handle.
private DeleteVolumeResponse handle(DeleteVolumeRequest req, Map<String, Object> ctx) throws ServiceException {
ZimbraSoapContext zsc = getZimbraSoapContext(ctx);
checkRight(zsc, ctx, Provisioning.getInstance().getLocalServer(), Admin.R_manageVolume);
VolumeManager mgr = VolumeManager.getInstance();
// make sure the volume exists before doing anything heavyweight...
mgr.getVolume(req.getId());
mgr.delete(req.getId());
return new DeleteVolumeResponse();
}
Aggregations