private FileAttributes getFileAttributesForNotification(Set<URI> uris) throws CacheException { FileAttributes fileAttributes = descriptor.getFileAttributes(); StorageInfo storageInfo = fileAttributes.getStorageInfo().clone(); for (URI uri : uris) { try { HsmLocationExtractorFactory.validate(uri); storageInfo.addLocation(uri); storageInfo.isSetAddLocation(true); } catch (IllegalArgumentException e) { throw new CacheException(2, e.getMessage(), e); } } FileAttributes fileAttributesForNotification = new FileAttributes(); fileAttributesForNotification.setAccessLatency(fileAttributes.getAccessLatency()); fileAttributesForNotification.setRetentionPolicy(fileAttributes.getRetentionPolicy()); fileAttributesForNotification.setStorageInfo(storageInfo); fileAttributesForNotification.setSize(fileAttributes.getSize()); return fileAttributesForNotification; }