/** * {@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()); }
/** * {@inheritDoc} */ @Override public <E extends io.cattle.platform.core.model.VolumeStoragePoolMap> E into(E into) { into.from(this); return into; }
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) { sendChange(Instance.class, accountId, ((Mount) obj).getInstanceId(), schedule, context);
@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 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); }
@Override public HandlerResult handle(ProcessState state, ProcessInstance process) { Map<String, Object> result = new HashMap<String, Object>(); Map<String, Set<Long>> allocationData = new HashMap<String, Set<Long>>(); result.put("_allocationData", allocationData); Volume volume = (Volume) state.getResource(); for (VolumeStoragePoolMap map : mapDao.findNonRemoved(VolumeStoragePoolMap.class, Volume.class, volume.getId())) { CollectionUtils.addToMap(allocationData, "volume:" + volume.getId(), map.getVolumeId(), HashSet.class); create(map, state.getData()); } return new HandlerResult(result); }
@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; } }
CollectionUtils.addToMap(allocationData, "volume:" + v.getId(), map.getVolumeId(), HashSet.class); create(map, state.getData());
@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); }