use of com.att.cdp.zones.model.Volume in project AJSC by att.
the class TestVolumeService method CreateVolume.
@Test
@Ignore
public void CreateVolume() throws ZoneException {
Context context = connect();
Volume template = new Volume();
template.setSize(Integer.valueOf(2));
template.setName("Volume");
VolumeService service = context.getVolumeService();
Volume vol = service.createVolume(template);
assertNotNull(vol);
}
use of com.att.cdp.zones.model.Volume in project AJSC by att.
the class OpenStackServer method loadVolumeAttachments.
/**
* This method is called to load the volume attachments, if they have not already been loaded. If they have been
* loaded, then the call is ignored.
*
* @param context
* The context that represents the connection we are servicing
* @throws ZoneException
* If the attachments cannot be obtained, or if a volume cannot be listed, or a volume does not exist
*/
private void loadVolumeAttachments(Context context) throws ZoneException {
if (volumeAttachmentsProcessed.compareAndSet(false, true)) {
VolumeService volumeService = context.getVolumeService();
ComputeService computeService = context.getComputeService();
Map<String, String> attachments = computeService.getAttachments(getId());
for (Entry<String, String> entry : attachments.entrySet()) {
Volume volume = volumeService.getVolume(entry.getValue());
getVolumes().put(entry.getKey(), volume);
}
}
}
use of com.att.cdp.zones.model.Volume in project AJSC by att.
the class OpenStackServer method getAttachments.
/**
* @see com.att.cdp.zones.spi.model.ConnectedServer#getAttachments()
*/
@Override
public Map<String, String> getAttachments() throws ZoneException {
loadVolumeAttachments(getContext());
Map<String, String> map = new HashMap<>();
for (String device : getVolumes().keySet()) {
Volume volume = getVolumes().get(device);
map.put(device, volume.getId());
}
// return super.getAttachments();
return map;
}
use of com.att.cdp.zones.model.Volume in project AJSC by att.
the class OpenStackVolumeService method getVolumes.
/**
* Retrieves the list of volumes defined for this service.
*
* @return The list of volumes for this tenant, if any. The list may be empty if there are no volumes defined.
* @see com.att.cdp.zones.VolumeService#getVolumes()
*/
@Override
public List<Volume> getVolumes() throws ZoneException {
connect();
Context context = getContext();
trackRequest();
RequestState.put(RequestState.SERVICE, "Compute");
RequestState.put(RequestState.SERVICE_URL, nova.getEndpoint());
ArrayList<Volume> list = new ArrayList<>();
try {
com.woorea.openstack.nova.model.Volumes volumes = nova.getClient().volumes().list(true).execute();
for (com.woorea.openstack.nova.model.Volume volume : volumes) {
list.add(new OpenStackVolume(context, volume));
}
} catch (OpenStackBaseException ex) {
ExceptionMapper.mapException(ex);
}
return list;
}
use of com.att.cdp.zones.model.Volume in project AJSC by att.
the class TestVolumeService method listVolumes.
/**
* @throws ZoneException
*/
@Test
@Ignore
public void listVolumes() throws ZoneException {
Context context = connect();
VolumeService service = context.getVolumeService();
List<Volume> volumes = service.getVolumes();
assertNotNull(volumes);
for (Volume volume : volumes) {
assertNotNull(service.getVolume(volume.getId()));
assertNotNull(service.getVolumes(volume.getName()));
if (volume.getStatus().equals(Volume.Status.ERROR)) {
System.out.printf("%-12s: %s\n", volume.getName(), volume.getId());
}
}
}
Aggregations