@Override protected RowMapper<StorageServerConnectionExtension> createEntityRowMapper() { return (rs, rowNum) -> { StorageServerConnectionExtension ssce = new StorageServerConnectionExtension(); ssce.setId(getGuidDefaultEmpty(rs, "id")); ssce.setHostId(getGuidDefaultEmpty(rs, "vds_id")); ssce.setIqn(rs.getString("iqn")); ssce.setUserName(rs.getString("user_name")); ssce.setPassword(DbFacadeUtils.decryptPassword(rs.getString("password"))); return ssce; }; } }
@Override protected MapSqlParameterSource createFullParametersMapper(StorageServerConnectionExtension entity) { return createIdParameterMapper(entity.getId()) .addValue("vds_id", entity.getHostId()) .addValue("iqn", entity.getIqn()) .addValue("user_name", entity.getUserName()) .addValue("password", DbFacadeUtils.encryptPassword(entity.getPassword())); }
@Override public String toString() { return ToStringBuilder.forInstance(this) .append("hostId", getHostId()) .append("target", getIqn()) .append("username", getUserName()) .build(); } }
private void fillWithRandomData(StorageServerConnectionExtension ssce) { ssce.setHostId(Guid.newGuid()); ssce.setIqn(RandomUtils.instance().nextXmlString(10)); ssce.setUserName(RandomUtils.instance().nextXmlString(10)); ssce.setPassword(RandomUtils.instance().nextXmlString(10)); } }
@Override protected StorageServerConnectionExtension generateNewEntity() { Guid newId = Guid.newGuid(); StorageServerConnectionExtension newssce = new StorageServerConnectionExtension(); newssce.setId(newId); fillWithRandomData(newssce); return newssce; }
@Override public Response add(StorageConnectionExtension storageConnectionExtension) { StorageServerConnectionExtension connExt = StorageServerConnectionExtensionMapper.map(storageConnectionExtension, null); connExt.setHostId(hostId); StorageServerConnectionExtensionParameters params = new StorageServerConnectionExtensionParameters(connExt); return performCreate(ActionType.AddStorageServerConnectionExtension, params, new QueryIdResolver<Guid>(QueryType.GetStorageServerConnectionExtensionById, IdQueryParameters.class)); }
@Test public void testAdd() { StorageServerConnectionExtension entity = StorageConnectionExtensionResourceTestHelper.getEntity(extensionID, hostID, pass, user, iqn); setUriInfo(setUpBasicUriExpectations()); setUpCreationExpectations(ActionType.AddStorageServerConnectionExtension, StorageServerConnectionExtensionParameters.class, new String[] { "StorageServerConnectionExtension" }, new Object[] { entity }, true, true, extensionID, QueryType.GetStorageServerConnectionExtensionById, IdQueryParameters.class, new String[] { "Id" }, new Object[] { extensionID }, entity); Response response = collection.add(StorageConnectionExtensionResourceTestHelper.getModel(extensionID, hostID, pass, user, iqn)); assertEquals(201, response.getStatus()); assertTrue(response.getEntity() instanceof StorageConnectionExtension); assertNotNull(response.getEntity()); assertEquals(((StorageConnectionExtension) response.getEntity()).getId(), entity.getId().toString()); }
protected static StorageServerConnectionExtension getEntity(Guid extensionID, Guid hostID, String pass, String username, String iqn) { StorageServerConnectionExtension extension = new StorageServerConnectionExtension(); extension.setId(extensionID); extension.setHostId(hostID); extension.setPassword(pass); extension.setUserName(username); extension.setIqn(iqn); return extension; }
@Mapping(from = org.ovirt.engine.core.common.businessentities.storage.StorageServerConnectionExtension.class, to = StorageConnectionExtension.class) public static StorageConnectionExtension map(StorageServerConnectionExtension connectionExtension, StorageConnectionExtension template) { StorageConnectionExtension modelConnectionExt = template != null ? template : new StorageConnectionExtension(); modelConnectionExt.setId(connectionExtension.getId().toString()); Host host = new Host(); if (connectionExtension.getHostId() != null) { host.setId(connectionExtension.getHostId().toString()); } modelConnectionExt.setHost(host); modelConnectionExt.setTarget(connectionExtension.getIqn()); modelConnectionExt.setUsername(connectionExtension.getUserName()); modelConnectionExt.setPassword(connectionExtension.getPassword()); return modelConnectionExt; } }
@Mapping(from = StorageConnectionExtension.class, to = org.ovirt.engine.core.common.businessentities.storage.StorageServerConnectionExtension.class) public static StorageServerConnectionExtension map(StorageConnectionExtension restConnectionModel, StorageServerConnectionExtension template) { StorageServerConnectionExtension engineConnectionExt = template != null ? template : new StorageServerConnectionExtension(); if (restConnectionModel.isSetId()) { engineConnectionExt.setId(new Guid(restConnectionModel.getId())); } if (restConnectionModel.isSetHost() && restConnectionModel.getHost().isSetId()) { engineConnectionExt.setHostId(new Guid(restConnectionModel.getHost().getId())); } if (restConnectionModel.isSetTarget()) { engineConnectionExt.setIqn(restConnectionModel.getTarget()); } if (restConnectionModel.isSetUsername()) { engineConnectionExt.setUserName(restConnectionModel.getUsername()); } if (restConnectionModel.isSetPassword()) { engineConnectionExt.setPassword(restConnectionModel.getPassword()); } return engineConnectionExt; }