/** * Create a #UriBuilder which encapsulates the path to an object * * i.e. for a VM tag, return a UriBuilder which encapsulates * '/rhevm-api/vms/{vm_id}/tags/{tag_id}' * * @param uriInfo the URI info * @param model the object * @return the #UriBuilder encapsulating the object's path */ public static <R extends BaseResource> UriBuilder getUriBuilder(UriInfo uriInfo, R model) { return getUriBuilder(uriInfo, model, null); }
/** * Set the href attribute on the supplied object * * e.g. set href = '/rhevm-api/vms/{vm_id}/tags/{tag_id}' on a VM tag * * @param uriInfo the URI info * @param model the object * @param suggestedParentType the suggested parent type * @return the model, with the href attribute set */ private static <R extends BaseResource> void setHref(UriInfo uriInfo, R model, Class<? extends BaseResource> suggestedParentType) { UriBuilder uriBuilder = getUriBuilder(uriInfo, model, suggestedParentType); if (uriBuilder != null) { model.setHref(uriBuilder.build().toString()); } }
private Disk addStatus(UriInfo uriInfo, Disk disk, String taskIds) { if (taskIds != null) { Link link = new Link(); link.setRel(CREATION_STATUS); link.setHref(LinkHelper.getUriBuilder(uriInfo, disk).path(CREATION_STATUS).path(taskIds).build().toString()); disk.getLinks().add(link); } return disk; } }
protected R addStatus(UriInfo uriInfo, R model, String taskIds) { if (taskIds != null) { Link link = new Link(); link.setRel(CREATION_STATUS); link.setHref(LinkHelper.getUriBuilder(uriInfo, model).path(CREATION_STATUS).path(taskIds).build().toString()); model.getLinks().add(link); } return model; }
private static void addSubCollection(UriInfo uriInfo, StorageDomain storageDomain, String collection) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, storageDomain).path(collection).build().toString()); storageDomain.getLinks().add(link); }
private static void addSubCollection(UriInfo uriInfo, VM vm, String collection) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, vm).path(collection).build().toString()); vm.getLinks().add(link); }
private static void addSubCollection(UriInfo uriInfo, User user, String collection) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, user).path(collection).build().toString()); user.getLinks().add(link); } }
private static void addSubCollection(UriInfo uriInfo, DataCenter dataCenter, String collection) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, dataCenter).path(collection).build().toString()); dataCenter.getLinks().add(link); }
private static void addSubCollection(UriInfo uriInfo, Host host, String collection) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, host).path(collection).build().toString()); host.getLinks().add(link); }
public static Template addLinks(UriInfo uriInfo, PowerShellTemplate template) { Template ret = JAXBHelper.clone("template", Template.class, template); String [] deviceCollections = { "cdroms", "disks", "nics" }; ret.getLinks().clear(); for (String collection : deviceCollections) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, ret).path(collection).build().toString()); ret.getLinks().add(link); } return LinkHelper.addLinks(uriInfo, ret); }
public static Cluster addLinks(UriInfo uriInfo, PowerShellPool pool, PowerShellParser parser, Cluster cluster) { cluster = querySupportedVersions(pool, parser, cluster); Link link = new Link(); link.setRel("networks"); link.setHref(LinkHelper.getUriBuilder(uriInfo, cluster).path("networks").build().toString()); cluster.getLinks().clear(); cluster.getLinks().add(link); return LinkHelper.addLinks(uriInfo, cluster); }
private Snapshot addStatus(UriInfo uriInfo, Snapshot snapshot, PowerShellDisk disk) { if (disk.getTaskIds() != null) { snapshot.setCreationStatus(disk.getCreationStatus()); Link link = new Link(); link.setRel(CREATION_STATUS); link.setHref(LinkHelper.getUriBuilder(uriInfo, snapshot).path(CREATION_STATUS).path(disk.getTaskIds()).build().toString()); snapshot.getLinks().add(link); } return snapshot; } }
public static StorageDomain addLinks(UriInfo uriInfo, StorageDomain storageDomain) { storageDomain = JAXBHelper.clone("storage_domain", StorageDomain.class, storageDomain); if (isExport(storageDomain)) { String [] subCollections = { "templates", "vms" }; storageDomain.getLinks().clear(); for (String collection : subCollections) { addSubCollection(uriInfo, storageDomain, collection); } } storageDomain = LinkHelper.addLinks(uriInfo, storageDomain); String [] subCollections = { "files" }; for (String collection : subCollections) { Link link = new Link(); link.setRel(collection); link.setHref(LinkHelper.getUriBuilder(uriInfo, storageDomain).path(collection).build().toString()); storageDomain.getLinks().add(link); } ActionsBuilder actionsBuilder = new ActionsBuilder(LinkHelper.getUriBuilder(uriInfo, storageDomain), StorageDomainResource.class); storageDomain.setActions(actionsBuilder.build()); return storageDomain; }
/** * Construct the set of action links for an object * * @param uriInfo the URI info * @param model the object * @param suggestedParentType the suggested parent type * @return the object, including its set of action links */ private static <R extends BaseResource> void setActions(UriInfo uriInfo, R model, Class<? extends BaseResource> suggestedParentType) { Collection collection = getCollection(model); UriBuilder uriBuilder = getUriBuilder(uriInfo, model, suggestedParentType); if (uriBuilder != null) { ActionsBuilder actionsBuilder = new ActionsBuilder(uriBuilder, collection.getResourceType()); model.setActions(actionsBuilder.build()); } }
public Snapshot buildFromDisk(PowerShellDisk disk) { Snapshot snapshot = new Snapshot(); snapshot.setId(disk.getVmSnapshotId()); snapshot.setDescription(disk.getDescription()); snapshot.setDate(disk.getLastModified()); snapshot.setVm(new VM()); snapshot.getVm().setId(vmId); if (!disk.getParentId().equals(UUID.EMPTY)) { UriBuilder uriBuilder = LinkHelper.getUriBuilder(getUriInfo(), snapshot.getVm()).path("snapshots"); Link prev = new Link(); prev.setRel("prev"); prev.setHref(uriBuilder.clone().path(disk.getParentId()).build().toString()); snapshot.getLinks().add(prev); } return LinkHelper.addLinks(getUriInfo(), snapshot); }
model.getClass()); uriBuilder = getUriBuilder(uriInfo, parent).path(path); } else { String path = getPath(collection.getCollectionType());
String masterId = bondNics.get(0).getId(); UriBuilder uriBuilder = LinkHelper.getUriBuilder(getUriInfo(), nic.getHost()).path("nics");
public StorageDomain addLinks() { StorageDomain storageDomain = JAXBHelper.clone(OBJECT_FACTORY.createStorageDomain(getModel())); storageDomain = LinkHelper.addLinks(getUriInfo(), storageDomain); UriBuilder uriBuilder = LinkHelper.getUriBuilder(getUriInfo(), storageDomain); ActionsBuilder actionsBuilder = new ActionsBuilder(uriBuilder, StorageDomainResource.class); storageDomain.setActions(actionsBuilder.build()); return storageDomain; }