@Override protected Object getAgentResource(ProcessState state, ProcessInstance process, Object dataResource) { Volume instance = (Volume)state.getResource(); List<? extends VolumeStoragePoolMap> maps = objectManager.children(instance, VolumeStoragePoolMap.class); StoragePool host = maps.size() > 0 ? objectManager.loadResource(StoragePool.class, maps.get(0).getStoragePoolId()) : null; return host; }
@Override protected Object getAgentResource(ProcessState state, ProcessInstance process, Object dataResource) { Object resource = state.getResource(); Volume instance = (Volume)getObjectByRelationship("volume", resource); List<? extends VolumeStoragePoolMap> maps = objectManager.children(instance, VolumeStoragePoolMap.class); StoragePool sp = maps.size() > 0 ? objectManager.loadResource(StoragePool.class, maps.get(0).getStoragePoolId()) : null; return sp; } }
@Override public HandlerResult handle(ProcessState state, ProcessInstance process) { Volume volume = (Volume) state.getResource(); Set<Long> pools = new HashSet<Long>(); for (VolumeStoragePoolMap map : mapDao.findNonRemoved(VolumeStoragePoolMap.class, Volume.class, volume.getId())) { activatePool(volume, map, state.getData()); pools.add(map.getStoragePoolId()); } return new HandlerResult("_activatedPools", pools); }
protected void activatePool(Volume volume, VolumeStoragePoolMap map, Map<String, Object> data) { Image image = getObjectManager().loadResource(Image.class, volume.getImageId()); activateImageInPool(volume, image, map.getStoragePoolId(), data); createThenActivate(map, data); }
@Override public HandlerResult handle(ProcessState state, ProcessInstance process) { Volume volume = (Volume) state.getResource(); Set<Long> pools = new HashSet<Long>(); for (VolumeStoragePoolMap map : getObjectManager().children(volume, VolumeStoragePoolMap.class)) { if (map.getRemoved() == null) { try { deactivate(map, state.getData()); } catch (ProcessCancelException e) { remove(map, state.getData()); } pools.add(map.getStoragePoolId()); } } return new HandlerResult("_deactivatedPools", pools); }
/** * {@inheritDoc} */ @Override public void from(io.cattle.platform.core.model.VolumeStoragePoolMap from) { setId(from.getId()); setName(from.getName()); setKind(from.getKind()); setUuid(from.getUuid()); setDescription(from.getDescription()); setState(from.getState()); setCreated(from.getCreated()); setRemoved(from.getRemoved()); setRemoveTime(from.getRemoveTime()); setData(from.getData()); setVolumeId(from.getVolumeId()); setStoragePoolId(from.getStoragePoolId()); }
sendChange(Host.class, accountId, ((StoragePoolHostMap) obj).getHostId(), schedule, context); } else if (obj instanceof VolumeStoragePoolMap) { sendChange(StoragePool.class, accountId, ((VolumeStoragePoolMap) obj).getStoragePoolId(), schedule, context); sendChange(Volume.class, accountId, ((VolumeStoragePoolMap) obj).getVolumeId(), schedule, context); } else if (obj instanceof Mount) {