Search in sources :

Example 1 with VirtualDataCenterRestRep

use of com.emc.storageos.model.vdc.VirtualDataCenterRestRep in project coprhd-controller by CoprHD.

the class InternalVdcApiTest method testGetVdc.

@Test
public void testGetVdc() throws Exception {
    VirtualDataCenterList vdcResp = rSys.path("/vdc").get(VirtualDataCenterList.class);
    List<NamedRelatedResourceRep> vdcList = vdcResp.getVirtualDataCenters();
    Assert.assertTrue(!vdcList.isEmpty());
    URI vdcId = vdcList.get(0).getId();
    VirtualDataCenterRestRep vdcFromInternalApi = internalVdcClient.getVdc(vdcId);
    Assert.assertTrue(vdcFromInternalApi != null);
    Assert.assertEquals(vdcId, vdcFromInternalApi.getId());
    Assert.assertEquals("vdc1", vdcFromInternalApi.getShortId());
}
Also used : VirtualDataCenterList(com.emc.storageos.model.vdc.VirtualDataCenterList) VirtualDataCenterRestRep(com.emc.storageos.model.vdc.VirtualDataCenterRestRep) NamedRelatedResourceRep(com.emc.storageos.model.NamedRelatedResourceRep) URI(java.net.URI) Test(org.junit.Test)

Example 2 with VirtualDataCenterRestRep

use of com.emc.storageos.model.vdc.VirtualDataCenterRestRep in project coprhd-controller by CoprHD.

the class ApiTest method testVDCs.

// TODO: to be moved in another test suite
public void testVDCs() {
    // TODO: once devkit gets switched to 1+0 appliance, we should enable it again.
    if (System.getenv("APP_HOST_NAMES").equals("localhost")) {
        return;
    }
    VirtualDataCenterAddParam addParam = new VirtualDataCenterAddParam();
    addParam.setApiEndpoint("http://apitest");
    addParam.setSecretKey("apitestSecret");
    addParam.setCertificateChain("apitestCertchain");
    addParam.setName("apitestName" + System.currentTimeMillis());
    // TODO: enhance to track task progress
    // root should NOT do this.
    ClientResponse rsp = rSys.path("/vdc").post(ClientResponse.class, addParam);
    Assert.assertEquals(403, rsp.getStatus());
    // use super admin with geo securityAdmin role to do post vdc
    // assign geo securityadmin to superuser.
    RoleAssignmentChanges changes = new RoleAssignmentChanges();
    changes.setAdd(new ArrayList<RoleAssignmentEntry>());
    RoleAssignmentEntry entry1 = new RoleAssignmentEntry();
    entry1.setSubjectId(SUPERUSER);
    entry1.getRoles().add("SECURITY_ADMIN");
    changes.getAdd().add(entry1);
    ClientResponse rsp1 = rSys.path("/vdc/role-assignments").put(ClientResponse.class, changes);
    Assert.assertEquals(200, rsp1.getStatus());
    // then do post VDC using superuser. should pass.
    TaskResourceRep taskRep = rZAdminGr.path("/vdc").post(TaskResourceRep.class, addParam);
    Assert.assertNotNull("vdc create task should not be null", taskRep);
    VirtualDataCenterList vdcList = rSys.path("/vdc").get(VirtualDataCenterList.class);
    Assert.assertNotNull("vdcList should not be null", vdcList);
    Assert.assertNotNull("vdcList.getVirtualDataCenters should not be null", vdcList.getVirtualDataCenters());
    // boolean found = false;
    // for (NamedRelatedResourceRep vdcResource : vdcList.getVirtualDataCenters()) {
    // if (vdcResource.getName().equals(addParam.getName())) {
    // found = true;
    // }
    // }
    // Assert.assertTrue("newly created vdc could not be found in vdc list", found);
    VirtualDataCenterRestRep vdc = rZAdminGr.path("/vdc/" + taskRep.getResource().getId()).get(VirtualDataCenterRestRep.class);
    Assert.assertNotNull("created vdc object can't be retrieved", vdc);
    Assert.assertTrue("vdc name does not match", vdc.getName().equals(addParam.getName()));
    // TODO: enhance to track task progress
    ClientResponse response = rZAdminGr.path("/vdc/" + vdc.getId() + "/disconnect").post(ClientResponse.class);
    Assert.assertEquals(405, response.getStatus());
    // TODO: enhance to track task progress
    response = rZAdminGr.path("/vdc/" + vdc.getId() + "/reconnect").post(ClientResponse.class);
    Assert.assertEquals(405, response.getStatus());
    // TODO: enhance to track task progress
    taskRep = rZAdminGr.path("/vdc/" + vdc.getId()).delete(TaskResourceRep.class);
    Assert.assertNotNull("vdc delete task should not be null", taskRep);
}
Also used : ClientResponse(com.sun.jersey.api.client.ClientResponse) RoleAssignmentChanges(com.emc.storageos.model.auth.RoleAssignmentChanges) VirtualDataCenterList(com.emc.storageos.model.vdc.VirtualDataCenterList) VirtualDataCenterRestRep(com.emc.storageos.model.vdc.VirtualDataCenterRestRep) RoleAssignmentEntry(com.emc.storageos.model.auth.RoleAssignmentEntry) TaskResourceRep(com.emc.storageos.model.TaskResourceRep) VirtualDataCenterAddParam(com.emc.storageos.model.vdc.VirtualDataCenterAddParam)

Example 3 with VirtualDataCenterRestRep

use of com.emc.storageos.model.vdc.VirtualDataCenterRestRep in project coprhd-controller by CoprHD.

the class VirtualDataCenterService method getVirtualDataCenter.

/**
 * Get Virtual Data Center
 * @param id
 * @brief Show details for a VDC
 * @return
 */
@GET
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Path("/{id}")
public VirtualDataCenterRestRep getVirtualDataCenter(@PathParam("id") URI id) {
    ArgValidator.checkFieldUriType(id, VirtualDataCenter.class, "id");
    VirtualDataCenter vdc = queryResource(id);
    VirtualDataCenterRestRep restRep = map(vdc);
    return restRep;
}
Also used : VirtualDataCenterRestRep(com.emc.storageos.model.vdc.VirtualDataCenterRestRep) Path(javax.ws.rs.Path) Produces(javax.ws.rs.Produces) GET(javax.ws.rs.GET)

Example 4 with VirtualDataCenterRestRep

use of com.emc.storageos.model.vdc.VirtualDataCenterRestRep in project coprhd-controller by CoprHD.

the class InternalVdcServiceClient method getVdc.

/**
 * Get config information for given vdc
 *
 * @param vdcId - vdc uuid
 * @return
 */
public VirtualDataCenterRestRep getVdc(URI vdcId) {
    String getVdcPath = String.format(INTERNAL_VDC_GET, vdcId.toString());
    WebResource rRoot = createRequest(getVdcPath);
    VirtualDataCenterRestRep resp = null;
    try {
        resp = addSignature(rRoot).get(VirtualDataCenterRestRep.class);
    } catch (UniformInterfaceException e) {
        _log.warn("could not get information for vdc {}. Err:{}", vdcId, e);
    }
    return resp;
}
Also used : UniformInterfaceException(com.sun.jersey.api.client.UniformInterfaceException) VirtualDataCenterRestRep(com.emc.storageos.model.vdc.VirtualDataCenterRestRep) WebResource(com.sun.jersey.api.client.WebResource)

Example 5 with VirtualDataCenterRestRep

use of com.emc.storageos.model.vdc.VirtualDataCenterRestRep in project coprhd-controller by CoprHD.

the class VirtualDataCenters method delete.

private static void delete(List<URI> ids) {
    if (!ids.isEmpty()) {
        // UI only support single selection, ignore any additional IDs
        URI id = ids.get(0);
        Task<VirtualDataCenterRestRep> task = VirtualDataCenterUtils.delete(id);
        flash.put("inProgressTask", task.getTaskResource().getId());
        Cache.delete(Common.VDCS);
    }
}
Also used : VirtualDataCenterRestRep(com.emc.storageos.model.vdc.VirtualDataCenterRestRep) URI(java.net.URI)

Aggregations

VirtualDataCenterRestRep (com.emc.storageos.model.vdc.VirtualDataCenterRestRep)18 Test (org.junit.Test)6 URI (java.net.URI)4 FlashException (controllers.util.FlashException)3 NamedRelatedResourceRep (com.emc.storageos.model.NamedRelatedResourceRep)2 VirtualDataCenterAddParam (com.emc.storageos.model.vdc.VirtualDataCenterAddParam)2 VirtualDataCenterList (com.emc.storageos.model.vdc.VirtualDataCenterList)2 Restrictions (controllers.deadbolt.Restrictions)2 TaskResourceRep (com.emc.storageos.model.TaskResourceRep)1 RoleAssignmentChanges (com.emc.storageos.model.auth.RoleAssignmentChanges)1 RoleAssignmentEntry (com.emc.storageos.model.auth.RoleAssignmentEntry)1 VirtualDataCenterModifyParam (com.emc.storageos.model.vdc.VirtualDataCenterModifyParam)1 ViPRClientHelper (com.emc.storageos.usermanagement.util.ViPRClientHelper)1 ViPRCoreClient (com.emc.vipr.client.ViPRCoreClient)1 VirtualDataCenters (com.emc.vipr.client.core.VirtualDataCenters)1 ClientResponse (com.sun.jersey.api.client.ClientResponse)1 UniformInterfaceException (com.sun.jersey.api.client.UniformInterfaceException)1 WebResource (com.sun.jersey.api.client.WebResource)1 UnsupportedEncodingException (java.io.UnsupportedEncodingException)1 GET (javax.ws.rs.GET)1