Search in sources :

Example 1 with IncomingDirectory

use of com.zimbra.cs.store.IncomingDirectory in project zm-mailbox by Zimbra.

the class FileBlobStore method getUniqueIncomingBlob.

private Blob getUniqueIncomingBlob() throws IOException, ServiceException {
    Volume volume = MANAGER.getCurrentMessageVolume();
    IncomingDirectory incdir = volume.getIncomingDirectory();
    if (incdir == null) {
        throw ServiceException.FAILURE("storing blob to volume without incoming directory: " + volume.getName(), null);
    }
    File f = incdir.getNewIncomingFile();
    ensureParentDirExists(f);
    return new VolumeBlob(f, volume.getId());
}
Also used : Volume(com.zimbra.cs.volume.Volume) IncomingDirectory(com.zimbra.cs.store.IncomingDirectory) File(java.io.File)

Example 2 with IncomingDirectory

use of com.zimbra.cs.store.IncomingDirectory in project zm-mailbox by Zimbra.

the class VolumeManager method updateSweptDirectories.

private void updateSweptDirectories() {
    List<IncomingDirectory> dirs = Lists.newArrayListWithCapacity(id2volume.size());
    for (Volume vol : id2volume.values()) {
        IncomingDirectory dir = vol.getIncomingDirectory();
        if (dir != null) {
            dirs.add(dir);
        }
    }
    IncomingDirectory.setSweptDirectories(dirs);
}
Also used : DeleteVolume(com.zimbra.cs.redolog.op.DeleteVolume) ModifyVolume(com.zimbra.cs.redolog.op.ModifyVolume) DbVolume(com.zimbra.cs.db.DbVolume) CreateVolume(com.zimbra.cs.redolog.op.CreateVolume) SetCurrentVolume(com.zimbra.cs.redolog.op.SetCurrentVolume) IncomingDirectory(com.zimbra.cs.store.IncomingDirectory)

Aggregations

IncomingDirectory (com.zimbra.cs.store.IncomingDirectory)2 DbVolume (com.zimbra.cs.db.DbVolume)1 CreateVolume (com.zimbra.cs.redolog.op.CreateVolume)1 DeleteVolume (com.zimbra.cs.redolog.op.DeleteVolume)1 ModifyVolume (com.zimbra.cs.redolog.op.ModifyVolume)1 SetCurrentVolume (com.zimbra.cs.redolog.op.SetCurrentVolume)1 Volume (com.zimbra.cs.volume.Volume)1 File (java.io.File)1