List of usage examples for org.apache.commons.lang3 StringUtils trimToNull
public static String trimToNull(final String str)
Removes control characters (char <= 32) from both ends of this String returning null if the String is empty ("") after the trim or if it is null .
From source file:io.sinistral.proteus.server.tools.swagger.Reader.java
private static Set<Scheme> parseSchemes(String schemes) { final Set<Scheme> result = EnumSet.noneOf(Scheme.class); for (String item : StringUtils.trimToEmpty(schemes).split(",")) { final Scheme scheme = Scheme.forValue(StringUtils.trimToNull(item)); if (scheme != null) { result.add(scheme);/*from ww w.ja v a 2 s .c om*/ } } return result; }
From source file:hoot.services.controllers.osm.ChangesetResourceCloseTest.java
@Test @Category(UnitTest.class) public void testChangesetAutoCloseWhenMaxElementsUploadedToExistingChangeset() throws Exception { Properties hootProps = HootProperties.getInstance(); //lower the max allowed elements per changeset from the default to the sum of number of //elements existing currently in changeset + what we're adding final int maximumChangesetElements = 18; hootProps.setProperty("maximumChangesetElements", String.valueOf(maximumChangesetElements)); HootProperties.setProperties(hootProps); Assert.assertEquals(maximumChangesetElements, Integer.parseInt(HootProperties.getInstance().getProperty("maximumChangesetElements"))); try {// w ww . j av a2 s .c o m final BoundingBox originalBounds = OsmTestUtils.createStartingTestBounds(); final long changesetId = OsmTestUtils.createTestChangeset(originalBounds); final Set<Long> nodeIds = OsmTestUtils.createTestNodes(changesetId, originalBounds); final Long[] nodeIdsArr = nodeIds.toArray(new Long[] {}); final Set<Long> wayIds = OsmTestUtils.createTestWays(changesetId, nodeIds); final Long[] wayIdsArr = wayIds.toArray(new Long[] {}); final Set<Long> relationIds = OsmTestUtils.createTestRelations(changesetId, nodeIds, wayIds); final Long[] relationIdsArr = relationIds.toArray(new Long[] {}); final BoundingBox updatedBounds = OsmTestUtils.createAfterModifiedTestChangesetBounds(); //Now update an existing changeset with a number of elements that, when combined with the //existing elements, are equal to the max allowed. The elements should be written and the //changeset closed. Document responseData = null; try { responseData = resource().path("api/0.6/changeset/" + changesetId + "/upload") .queryParam("mapId", "" + mapId).type(MediaType.TEXT_XML).accept(MediaType.TEXT_XML) .post(Document.class, "<osmChange version=\"0.3\" generator=\"iD\">" + "<create/>" + "<modify>" + "<node id=\"" + nodeIdsArr[0] + "\" lon=\"" + updatedBounds.getMinLon() + "\" " + "lat=\"" + updatedBounds.getMinLat() + "\" version=\"1\" changeset=\"" + changesetId + "\">" + "<tag k=\"key 1b\" v=\"val 1b\"></tag>" + "<tag k=\"key 2b\" v=\"val 2b\"></tag>" + "</node>" + "<node id=\"" + nodeIdsArr[1] + "\" lon=\"" + originalBounds.getMaxLon() + "\" " + "lat=\"" + updatedBounds.getMinLat() + "\" version=\"1\" changeset=\"" + changesetId + "\">" + "<tag k=\"key 3b\" v=\"val 3b\"></tag>" + "</node>" + "<way id=\"" + wayIdsArr[0] + "\" version=\"1\" changeset=\"" + changesetId + "\" >" + "<nd ref=\"" + nodeIdsArr[0] + "\"></nd>" + "<nd ref=\"" + nodeIdsArr[4] + "\"></nd>" + "<tag k=\"key 2\" v=\"val 2\"></tag>" + "</way>" + "<way id=\"" + wayIdsArr[1] + "\" version=\"1\" changeset=\"" + changesetId + "\" >" + "<nd ref=\"" + nodeIdsArr[4] + "\"></nd>" + "<nd ref=\"" + nodeIdsArr[2] + "\"></nd>" + "</way>" + "<relation id=\"" + relationIdsArr[0] + "\" version=\"1\" changeset=\"" + changesetId + "\" >" + "<member type=\"way\" role=\"role4\" ref=\"" + wayIdsArr[1] + "\"></member>" + "<member type=\"way\" role=\"role2\" ref=\"" + wayIdsArr[0] + "\"></member>" + "<member type=\"node\" ref=\"" + nodeIdsArr[2] + "\"></member>" + "</relation>" + "<relation id=\"" + relationIdsArr[1] + "\" version=\"1\" changeset=\"" + changesetId + "\" >" + "<member type=\"relation\" role=\"role1\" ref=\"" + relationIdsArr[0] + "\"></member>" + "<member type=\"node\" ref=\"" + nodeIdsArr[4] + "\"></member>" + "<tag k=\"key 2\" v=\"val 2\"></tag>" + "<tag k=\"key 3\" v=\"val 3\"></tag>" + "</relation>" + "</modify>" + "<delete if-unused=\"true\"/>" + "</osmChange>"); } catch (UniformInterfaceException e) { ClientResponse r = e.getResponse(); Assert.fail("Unexpected response " + r.getStatus() + " " + r.getEntity(String.class)); } Assert.assertNotNull(responseData); XPath xpath = XmlDocumentBuilder.createXPath(); try { NodeList returnedNodes = XPathAPI.selectNodeList(responseData, "//osm/diffResult/node"); Assert.assertEquals(2, returnedNodes.getLength()); Assert.assertEquals((long) nodeIdsArr[0], Long.parseLong(xpath.evaluate("//osm/diffResult/node[1]/@old_id", responseData))); Assert.assertEquals( Long.parseLong(xpath.evaluate("//osm/diffResult/node[1]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/node[1]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/node[1]/@new_version", responseData))); Assert.assertEquals((long) nodeIdsArr[1], Long.parseLong(xpath.evaluate("//osm/diffResult/node[2]/@old_id", responseData))); Assert.assertEquals( Long.parseLong(xpath.evaluate("//osm/diffResult/node[2]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/node[2]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/node[2]/@new_version", responseData))); NodeList returnedWays = XPathAPI.selectNodeList(responseData, "//osm/diffResult/way"); Assert.assertEquals(2, returnedWays.getLength()); Assert.assertEquals((long) wayIdsArr[0], Long.parseLong(xpath.evaluate("//osm/diffResult/way[1]/@old_id", responseData))); Assert.assertEquals(Long.parseLong(xpath.evaluate("//osm/diffResult/way[1]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/way[1]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/way[1]/@new_version", responseData))); Assert.assertEquals((long) wayIdsArr[1], Long.parseLong(xpath.evaluate("//osm/diffResult/way[2]/@old_id", responseData))); Assert.assertEquals(Long.parseLong(xpath.evaluate("//osm/diffResult/way[2]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/way[2]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/way[2]/@new_version", responseData))); NodeList returnedRelations = XPathAPI.selectNodeList(responseData, "//osm/diffResult/relation"); Assert.assertEquals(2, returnedRelations.getLength()); //check the modified relations Assert.assertEquals((long) relationIdsArr[0], Long.parseLong(xpath.evaluate("//osm/diffResult/relation[1]/@old_id", responseData))); Assert.assertEquals( Long.parseLong(xpath.evaluate("//osm/diffResult/relation[1]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/relation[1]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/relation[1]/@new_version", responseData))); Assert.assertEquals((long) relationIdsArr[1], Long.parseLong(xpath.evaluate("//osm/diffResult/relation[2]/@old_id", responseData))); Assert.assertEquals( Long.parseLong(xpath.evaluate("//osm/diffResult/relation[2]/@old_id", responseData)), Long.parseLong(xpath.evaluate("//osm/diffResult/relation[2]/@new_id", responseData))); Assert.assertEquals(2, Long.parseLong(xpath.evaluate("//osm/diffResult/relation[2]/@new_version", responseData))); } catch (XPathExpressionException e) { Assert.fail("Error parsing response document: " + e.getMessage()); } final Timestamp now = new Timestamp(Calendar.getInstance().getTimeInMillis()); QChangesets changesets = QChangesets.changesets; hoot.services.db2.Changesets changeset = new SQLQuery(conn, DbUtils.getConfiguration(mapId)) .from(changesets).where(changesets.id.eq(changesetId)).singleResult(changesets); try { final Map<Long, CurrentNodes> nodes = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentNodesTbl) .map(currentNodesTbl.id, currentNodesTbl); Assert.assertEquals(5, nodes.size()); CurrentNodes nodeRecord = (CurrentNodes) nodes.get(nodeIdsArr[0]); Assert.assertEquals(new Long(changesetId), nodeRecord.getChangesetId()); Assert.assertEquals(new Integer( (int) (DbUtils.toDbCoordPrecision(updatedBounds.getMinLat()) * GeoUtils.GEO_RECORD_SCALE)), nodeRecord.getLatitude()); Assert.assertEquals(new Integer( (int) (DbUtils.toDbCoordPrecision(updatedBounds.getMinLon()) * GeoUtils.GEO_RECORD_SCALE)), nodeRecord.getLongitude()); Assert.assertEquals(nodeIdsArr[0], nodeRecord.getId()); Assert.assertEquals( new Long(QuadTileCalculator.tileForPoint(DbUtils.fromDbCoordValue(nodeRecord.getLatitude()), DbUtils.fromDbCoordValue(nodeRecord.getLongitude()))), nodeRecord.getTile()); Thread.sleep(1000); Assert.assertTrue(nodeRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), nodeRecord.getVersion()); Assert.assertEquals(new Boolean(true), nodeRecord.getVisible()); Map<String, String> tags = PostgresUtils.postgresObjToHStore((PGobject) nodeRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(2, tags.size()); Assert.assertEquals("val 1b", tags.get("key 1b")); Assert.assertEquals("val 2b", tags.get("key 2b")); nodeRecord = (CurrentNodes) nodes.get(nodeIdsArr[1]); Assert.assertEquals(new Long(changesetId), nodeRecord.getChangesetId()); Assert.assertEquals(new Integer( (int) (DbUtils.toDbCoordPrecision(updatedBounds.getMinLat()) * GeoUtils.GEO_RECORD_SCALE)), nodeRecord.getLatitude()); Assert.assertEquals(new Integer( (int) (DbUtils.toDbCoordPrecision(originalBounds.getMaxLon()) * GeoUtils.GEO_RECORD_SCALE)), nodeRecord.getLongitude()); Assert.assertEquals(nodeIdsArr[1], nodeRecord.getId()); Assert.assertEquals( new Long(QuadTileCalculator.tileForPoint(DbUtils.fromDbCoordValue(nodeRecord.getLatitude()), DbUtils.fromDbCoordValue(nodeRecord.getLongitude()))), nodeRecord.getTile()); Assert.assertTrue(nodeRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), nodeRecord.getVersion()); Assert.assertEquals(new Boolean(true), nodeRecord.getVisible()); tags = PostgresUtils.postgresObjToHStore((PGobject) nodeRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 3b", tags.get("key 3b")); nodeRecord = (CurrentNodes) nodes.get(nodeIdsArr[3]); tags = PostgresUtils.postgresObjToHStore((PGobject) nodeRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 3", tags.get("key 3")); nodeRecord = (CurrentNodes) nodes.get(nodeIdsArr[4]); tags = PostgresUtils.postgresObjToHStore((PGobject) nodeRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 4", tags.get("key 4")); } catch (Exception e) { Assert.fail("Error checking nodes: " + e.getMessage()); } try { final Map<Long, CurrentWays> ways = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentWaysTbl) .map(currentWaysTbl.id, currentWaysTbl); Assert.assertEquals(3, ways.size()); CurrentWays wayRecord = (CurrentWays) ways.get(wayIdsArr[0]); Assert.assertEquals(new Long(changesetId), wayRecord.getChangesetId()); Assert.assertEquals(wayIdsArr[0], wayRecord.getId()); Assert.assertTrue(wayRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), wayRecord.getVersion()); Assert.assertEquals(new Boolean(true), wayRecord.getVisible()); List<CurrentWayNodes> wayNodes = new SQLQuery(conn, DbUtils.getConfiguration(mapId)) .from(currentWayNodesTbl).where(currentWayNodesTbl.wayId.eq(wayIdsArr[0])) .orderBy(currentWayNodesTbl.sequenceId.asc()).list(currentWayNodesTbl); Assert.assertEquals(2, wayNodes.size()); CurrentWayNodes wayNode = wayNodes.get(0); Assert.assertEquals(nodeIdsArr[0], wayNode.getNodeId()); Assert.assertEquals(new Long(1), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); wayNode = wayNodes.get(1); Assert.assertEquals(nodeIdsArr[4], wayNode.getNodeId()); Assert.assertEquals(new Long(2), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); //verify the previously existing tags Map<String, String> tags = PostgresUtils.postgresObjToHStore((PGobject) wayRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 2", tags.get("key 2")); wayRecord = (CurrentWays) ways.get(wayIdsArr[1]); Assert.assertEquals(new Long(changesetId), wayRecord.getChangesetId()); Assert.assertEquals(wayIdsArr[1], wayRecord.getId()); Assert.assertTrue(wayRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), wayRecord.getVersion()); Assert.assertEquals(new Boolean(true), wayRecord.getVisible()); wayNodes = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentWayNodesTbl) .where(currentWayNodesTbl.wayId.eq(wayIdsArr[1])) .orderBy(currentWayNodesTbl.sequenceId.asc()).list(currentWayNodesTbl); Assert.assertEquals(2, wayNodes.size()); wayNode = wayNodes.get(0); Assert.assertEquals(nodeIdsArr[4], wayNode.getNodeId()); Assert.assertEquals(new Long(1), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); wayNode = wayNodes.get(1); Assert.assertEquals(nodeIdsArr[2], wayNode.getNodeId()); Assert.assertEquals(new Long(2), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); //verify the way with no tags Assert.assertTrue(wayRecord.getTags() == null || StringUtils.isEmpty(((PGobject) wayRecord.getTags()).getValue())); //verify the created ways wayRecord = (CurrentWays) ways.get(wayIdsArr[2]); Assert.assertEquals(new Long(changesetId), wayRecord.getChangesetId()); Assert.assertEquals(wayIdsArr[2], wayRecord.getId()); Assert.assertTrue(wayRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(1), wayRecord.getVersion()); Assert.assertEquals(new Boolean(true), wayRecord.getVisible()); wayNodes = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentWayNodesTbl) .where(currentWayNodesTbl.wayId.eq(wayIdsArr[2])) .orderBy(currentWayNodesTbl.sequenceId.asc()).list(currentWayNodesTbl); Assert.assertEquals(2, wayNodes.size()); wayNode = wayNodes.get(0); Assert.assertEquals(nodeIdsArr[0], wayNode.getNodeId()); Assert.assertEquals(new Long(1), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); wayNode = wayNodes.get(1); Assert.assertEquals(nodeIdsArr[1], wayNode.getNodeId()); Assert.assertEquals(new Long(2), wayNode.getSequenceId()); Assert.assertEquals(wayRecord.getId(), wayNode.getWayId()); //verify the created tags tags = PostgresUtils.postgresObjToHStore((PGobject) wayRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 3", tags.get("key 3")); } catch (Exception e) { Assert.fail("Error checking ways: " + e.getMessage()); } try { final Map<Long, CurrentRelations> relations = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentRelationsTbl) .map(currentRelationsTbl.id, currentRelationsTbl); Assert.assertEquals(4, relations.size()); CurrentRelations relationRecord = (CurrentRelations) relations.get(relationIdsArr[0]); Assert.assertEquals(new Long(changesetId), relationRecord.getChangesetId()); Assert.assertEquals(relationIdsArr[0], relationRecord.getId()); Assert.assertTrue(relationRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), relationRecord.getVersion()); Assert.assertEquals(new Boolean(true), relationRecord.getVisible()); List<CurrentRelationMembers> members = new SQLQuery(conn, DbUtils.getConfiguration(mapId)) .from(currentRelationMembersTbl) .where(currentRelationMembersTbl.relationId.eq(relationIdsArr[0])) .orderBy(currentRelationMembersTbl.sequenceId.asc()).list(currentRelationMembersTbl); Assert.assertEquals(3, members.size()); CurrentRelationMembers member = members.get(0); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.way, member.getMemberType()); Assert.assertEquals("role4", member.getMemberRole()); Assert.assertEquals(new Integer(1), member.getSequenceId()); Assert.assertEquals(wayIdsArr[1], member.getMemberId()); member = members.get(1); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.way, member.getMemberType()); Assert.assertEquals("role2", member.getMemberRole()); Assert.assertEquals(new Integer(2), member.getSequenceId()); Assert.assertEquals(wayIdsArr[0], member.getMemberId()); member = members.get(2); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.node, member.getMemberType()); Assert.assertEquals("", member.getMemberRole()); Assert.assertEquals(new Integer(3), member.getSequenceId()); Assert.assertEquals(nodeIdsArr[2], member.getMemberId()); Map<String, String> tags = PostgresUtils.postgresObjToHStore((PGobject) relationRecord.getTags()); Assert.assertTrue(relationRecord.getTags() == null || StringUtils.trimToNull(((PGobject) relationRecord.getTags()).getValue()) == null); relationRecord = (CurrentRelations) relations.get(relationIdsArr[1]); Assert.assertEquals(new Long(changesetId), relationRecord.getChangesetId()); Assert.assertEquals(relationIdsArr[1], relationRecord.getId()); Assert.assertTrue(relationRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(2), relationRecord.getVersion()); Assert.assertEquals(new Boolean(true), relationRecord.getVisible()); members = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentRelationMembersTbl) .where(currentRelationMembersTbl.relationId.eq(relationIdsArr[1])) .orderBy(currentRelationMembersTbl.sequenceId.asc()).list(currentRelationMembersTbl); Assert.assertEquals(2, members.size()); member = members.get(0); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.relation, member.getMemberType()); Assert.assertEquals("role1", member.getMemberRole()); Assert.assertEquals(new Integer(1), member.getSequenceId()); Assert.assertEquals(relationIdsArr[0], member.getMemberId()); member = members.get(1); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.node, member.getMemberType()); Assert.assertEquals("", member.getMemberRole()); Assert.assertEquals(new Integer(2), member.getSequenceId()); Assert.assertEquals(nodeIdsArr[4], member.getMemberId()); tags = PostgresUtils.postgresObjToHStore((PGobject) relationRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(2, tags.size()); Assert.assertEquals("val 2", tags.get("key 2")); Assert.assertEquals("val 3", tags.get("key 3")); relationRecord = (CurrentRelations) relations.get(relationIdsArr[2]); Assert.assertEquals(new Long(changesetId), relationRecord.getChangesetId()); Assert.assertEquals(relationIdsArr[2], relationRecord.getId()); Assert.assertTrue(relationRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(1), relationRecord.getVersion()); Assert.assertEquals(new Boolean(true), relationRecord.getVisible()); members = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentRelationMembersTbl) .where(currentRelationMembersTbl.relationId.eq(relationIdsArr[2])) .orderBy(currentRelationMembersTbl.sequenceId.asc()).list(currentRelationMembersTbl); Assert.assertEquals(1, members.size()); member = members.get(0); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.way, member.getMemberType()); Assert.assertEquals("", member.getMemberRole()); Assert.assertEquals(new Integer(1), member.getSequenceId()); Assert.assertEquals(wayIdsArr[1], member.getMemberId()); tags = PostgresUtils.postgresObjToHStore((PGobject) relationRecord.getTags()); Assert.assertNotNull(tags); Assert.assertEquals(1, tags.size()); Assert.assertEquals("val 4", tags.get("key 4")); relationRecord = (CurrentRelations) relations.get(relationIdsArr[3]); Assert.assertEquals(new Long(changesetId), relationRecord.getChangesetId()); Assert.assertEquals(relationIdsArr[3], relationRecord.getId()); Assert.assertTrue(relationRecord.getTimestamp().before(now)); Assert.assertEquals(new Long(1), relationRecord.getVersion()); Assert.assertEquals(new Boolean(true), relationRecord.getVisible()); members = new SQLQuery(conn, DbUtils.getConfiguration(mapId)).from(currentRelationMembersTbl) .where(currentRelationMembersTbl.relationId.eq(relationIdsArr[3])) .orderBy(currentRelationMembersTbl.sequenceId.asc()) .list(currentRelationMembersTbl); Assert.assertEquals(1, members.size()); member = members.get(0); Assert.assertEquals(relationRecord.getId(), member.getRelationId()); Assert.assertEquals(DbUtils.nwr_enum.node, member.getMemberType()); Assert.assertEquals("role1", member.getMemberRole()); Assert.assertEquals(new Integer(1), member.getSequenceId()); Assert.assertEquals(nodeIdsArr[2], member.getMemberId()); Assert.assertTrue(relationRecord.getTags() == null || StringUtils.isEmpty(((PGobject) relationRecord.getTags()).getValue())); } catch (Exception e) { Assert.fail("Error checking relations: " + e.getMessage()); } try { Assert.assertNotNull(changeset); Assert.assertTrue(changeset.getCreatedAt().before(now)); Assert.assertTrue(changeset.getClosedAt().after(changeset.getCreatedAt())); Assert.assertTrue(changeset.getClosedAt().before(now)); Assert.assertEquals(new Integer(18), changeset.getNumChanges()); Assert.assertEquals(new Long(userId), changeset.getUserId()); BoundingBox expandedBounds = new BoundingBox(originalBounds); expandedBounds.expand(updatedBounds, Double.parseDouble(HootProperties.getDefault("changesetBoundsExpansionFactorDeegrees"))); hoot.services.models.osm.Changeset hootChangeset = new hoot.services.models.osm.Changeset(mapId, changesetId, conn); BoundingBox changesetBounds = hootChangeset.getBounds(); Assert.assertTrue(changesetBounds.equals(expandedBounds)); } catch (Exception e) { Assert.fail("Error checking changeset: " + e.getMessage()); } } catch (Exception e) { log.error(e.getMessage()); throw e; } finally { //set this back to default now that this test is over HootProperties.getInstance().setProperty("maximumChangesetElements", HootProperties.getDefault("maximumChangesetElements")); Assert.assertEquals(Integer.parseInt(HootProperties.getDefault("maximumChangesetElements")), Integer.parseInt(HootProperties.getInstance().getProperty("maximumChangesetElements"))); } }
From source file:com.hubrick.vertx.s3.client.S3Client.java
private MultiMap populateDeleteObjectHeaders(DeleteObjectRequest deleteObjectRequest) { final MultiMap headers = MultiMap.caseInsensitiveMultiMap(); if (StringUtils.trimToNull(deleteObjectRequest.getAmzMfa()) != null) { headers.add(Headers.X_AMZ_MFA, StringUtils.trim(deleteObjectRequest.getAmzMfa())); }//from ww w.j a v a 2s .c om return headers; }
From source file:alfio.manager.TicketReservationManager.java
public void updateTicketOwner(Ticket ticket, Locale locale, Event event, UpdateTicketOwnerForm updateTicketOwner, PartialTicketTextGenerator confirmationTextBuilder, PartialTicketTextGenerator ownerChangeTextBuilder, Optional<UserDetails> userDetails) { Ticket preUpdateTicket = ticketRepository.findByUUID(ticket.getUuid()); Map<String, String> preUpdateTicketFields = ticketFieldRepository.findAllByTicketId(ticket.getId()).stream() .collect(Collectors.toMap(TicketFieldValue::getName, TicketFieldValue::getValue)); String newEmail = updateTicketOwner.getEmail().trim(); CustomerName customerName = new CustomerName(updateTicketOwner.getFullName(), updateTicketOwner.getFirstName(), updateTicketOwner.getLastName(), event); ticketRepository.updateTicketOwner(ticket.getUuid(), newEmail, customerName.getFullName(), customerName.getFirstName(), customerName.getLastName()); ////from w w w.j av a2 s. com Locale userLocale = Optional.ofNullable(StringUtils.trimToNull(updateTicketOwner.getUserLanguage())) .map(Locale::forLanguageTag).orElse(locale); ticketRepository.updateOptionalTicketInfo(ticket.getUuid(), userLocale.getLanguage()); ticketFieldRepository.updateOrInsert(updateTicketOwner.getAdditional(), ticket.getId(), event.getId()); Ticket newTicket = ticketRepository.findByUUID(ticket.getUuid()); if (newTicket.getStatus() == TicketStatus.ACQUIRED && (!StringUtils.equalsIgnoreCase(newEmail, ticket.getEmail()) || !StringUtils.equalsIgnoreCase(customerName.getFullName(), ticket.getFullName()))) { sendTicketByEmail(newTicket, userLocale, event, confirmationTextBuilder); } boolean admin = isAdmin(userDetails); if (!admin && StringUtils.isNotBlank(ticket.getEmail()) && !StringUtils.equalsIgnoreCase(newEmail, ticket.getEmail()) && ticket.getStatus() == TicketStatus.ACQUIRED) { Locale oldUserLocale = Locale.forLanguageTag(ticket.getUserLanguage()); String subject = messageSource.getMessage("ticket-has-changed-owner-subject", new Object[] { event.getDisplayName() }, oldUserLocale); notificationManager.sendSimpleEmail(event, ticket.getEmail(), subject, () -> ownerChangeTextBuilder.generate(newTicket)); if (event.getBegin().isBefore(ZonedDateTime.now(event.getZoneId()))) { Organization organization = organizationRepository.getById(event.getOrganizationId()); notificationManager.sendSimpleEmail(event, organization.getEmail(), "WARNING: Ticket has been reassigned after event start", () -> ownerChangeTextBuilder.generate(newTicket)); } } if (admin) { TicketReservation reservation = findById(ticket.getTicketsReservationId()) .orElseThrow(IllegalStateException::new); //if the current user is admin, then it would be good to update also the name of the Reservation Owner String username = userDetails.get().getUsername(); log.warn("Reservation {}: forced assignee replacement old: {} new: {}", reservation.getId(), reservation.getFullName(), username); ticketReservationRepository.updateAssignee(reservation.getId(), username); } pluginManager.handleTicketAssignment(newTicket); Ticket postUpdateTicket = ticketRepository.findByUUID(ticket.getUuid()); Map<String, String> postUpdateTicketFields = ticketFieldRepository.findAllByTicketId(ticket.getId()) .stream().collect(Collectors.toMap(TicketFieldValue::getName, TicketFieldValue::getValue)); auditUpdateTicket(preUpdateTicket, preUpdateTicketFields, postUpdateTicket, postUpdateTicketFields, event.getId()); }
From source file:hudson.model.AbstractProject.java
@Override protected void submit(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, FormException { super.submit(req, rsp); makeDisabled(null != req.getParameter("disable")); setCascadingProjectName(StringUtils.trimToNull(req.getParameter("cascadingProjectName"))); setJDK(req.getParameter("jdk")); setQuietPeriod(//from w w w .j av a 2s.c o m null != req.getParameter(HAS_QUIET_PERIOD_PROPERTY_NAME) ? req.getParameter("quiet_period") : null); setScmCheckoutRetryCount(null != req.getParameter(HAS_SCM_CHECKOUT_RETRY_COUNT_PROPERTY_NAME) ? req.getParameter("scmCheckoutRetryCount") : null); setBlockBuildWhenDownstreamBuilding(null != req.getParameter("blockBuildWhenDownstreamBuilding")); setBlockBuildWhenUpstreamBuilding(null != req.getParameter("blockBuildWhenUpstreamBuilding")); if (req.getParameter(APPOINTED_NODE_PROPERTY_NAME) != null) { // New logic for handling whether this choice came from the dropdown or textfield. if (BASIC_KEY.equals(req.getParameter(AFFINITY_CHO0SER_KEY))) { setAppointedNode(new AppointedNode(Util.fixEmptyAndTrim(req.getParameter(SLAVE_KEY)), false)); } else { setAppointedNode( new AppointedNode(Util.fixEmptyAndTrim(req.getParameter(ASSIGNED_LABEL_KEY)), true)); } } else { setAppointedNode(null); } setCleanWorkspaceRequired(null != req.getParameter("cleanWorkspaceRequired")); setConcurrentBuild(req.getSubmittedForm().has("concurrentBuild")); authToken = BuildAuthorizationToken.create(req); setScm(SCMS.parseSCM(req, this)); buildTriggers(req, req.getSubmittedForm(), Trigger.for_(this)); }
From source file:net.sourceforge.pmd.lang.LanguageRegistry.java
public static LanguageVersion findLanguageVersionByTerseName(String terseNameAndVersion) { String version;//w w w . j a v a 2s . c om String terseName; if (terseNameAndVersion.contains(" ")) { version = StringUtils .trimToNull(terseNameAndVersion.substring(terseNameAndVersion.lastIndexOf(' ') + 1)); terseName = terseNameAndVersion.substring(0, terseNameAndVersion.lastIndexOf(' ')); } else { version = null; terseName = terseNameAndVersion; } Language language = findLanguageByTerseName(terseName); if (language != null) { if (version == null) { return language.getDefaultVersion(); } else { return language.getVersion(version); } } return null; }
From source file:net.thirdy.blackmarket.service.Ladder.java
public void addPlayerLadderData(ExileToolsHit exileToolsHit) { if (!Main.DISABLE_LADDER_FEATURE) { String account = exileToolsHit.getShop().getSellerAccount(); String league = exileToolsHit.getAttributes().getLeague(); Map<String, LadderHit> leagueMap = ladderMapAllLeagues.get(league); Optional<LadderHit> ladderHit = leagueMap.entrySet().stream().map(es -> es.getValue()) .filter(lh -> lh.accountName().equalsIgnoreCase(account)).findFirst(); if (ladderHit.isPresent()) { String sellerIGN = StringUtils.trimToNull(exileToolsHit.getShop().getSellerIGN()); if (sellerIGN == null) { exileToolsHit.getShop().setSellerIGN(ladderHit.get().charName()); }//w w w .ja v a 2 s . co m exileToolsHit.setLadderHit(ladderHit); } } }
From source file:nl.strohalm.cyclos.utils.database.DatabaseCustomFieldHandler.java
/** * Appends the custom field values on a query. Should be invoked when * building the where part of the query/*from ww w.ja v a 2 s. c om*/ * * @param hql The current HQL buffer * @param values The custom field values used to filter */ public void appendConditions(final StringBuilder hql, final Map<String, Object> namedParameters, final Collection<? extends CustomFieldValue> values) { if (values == null || values.isEmpty()) { return; } for (final CustomFieldValue fieldValue : values) { CustomField field = fieldValue.getField(); if (field == null) { continue; } field = fetchDao.fetch(field); String value = fieldValue.getValue(); // Remove any manually entered '%' value = StringUtils.trimToNull(StringUtils.replace(value, "%", "")); if (value == null) { continue; } final String alias = alias(field); final String fieldParam = "field_" + alias; final String valueParam = "value_" + alias; hql.append(" and ").append(alias).append(".field = :").append(fieldParam); namedParameters.put(fieldParam, field); if (LoggedUser.hasUser() && !LoggedUser.isAdministrator()) { if (field.getNature() == CustomField.Nature.MEMBER) { // Exclude hidden fields hql.append(" and ").append(alias).append(".hidden <> true"); } } // Check the field type switch (field.getType()) { case STRING: if (StringUtils.isNotEmpty(field.getPattern())) { // Remove the mask and consider the value as matching exactly value = StringHelper.removeMask(field.getPattern(), value, false); hql.append(" and ").append(alias).append(".stringValue like :").append(valueParam); namedParameters.put(valueParam, value); } else { // Use a like expression hql.append(" and ").append(alias).append(".stringValue like :").append(valueParam); namedParameters.put(valueParam, StringUtils.trimToEmpty(value) + "%"); } break; case BOOLEAN: if (Boolean.parseBoolean(value)) { hql.append(" and ").append(alias).append(".stringValue = :" + valueParam); } else { hql.append(" and ").append(alias).append(".stringValue <> :" + valueParam); } namedParameters.put(valueParam, "true"); break; case ENUMERATED: boolean byName = true; if (StringUtils.containsOnly(value, "0123456789,")) { // Try by id try { final Collection<CustomFieldPossibleValue> possibleValues = new ArrayList<CustomFieldPossibleValue>(); final String[] possibleValueIds = StringUtils.split(value, ','); for (final String idAsString : possibleValueIds) { final CustomFieldPossibleValue possibleValue = customFieldPossibleValueDao .load(Long.valueOf(idAsString)); if (!possibleValue.getField().equals(field)) { throw new Exception(); } possibleValues.add(possibleValue); } byName = false; hql.append(" and ").append(alias).append(".possibleValue in (:").append(valueParam) .append(')'); namedParameters.put(valueParam, possibleValues); } catch (final Exception e) { // Possible value not found by id - next try by name } } if (byName) { hql.append(" and ").append(alias).append(".possibleValue.value = :").append(valueParam); namedParameters.put(valueParam, value); } break; case MEMBER: Long memberId = null; if (fieldValue.getMemberValue() != null) { memberId = fieldValue.getMemberValue().getId(); } else { memberId = IdConverter.instance().valueOf(value); } if (memberId != null) { hql.append(" and ").append(alias).append(".memberValue.id = :").append(valueParam); namedParameters.put(valueParam, memberId); } break; default: hql.append(" and ").append(alias).append(".stringValue = :").append(valueParam); namedParameters.put(valueParam, value); break; } } }
From source file:nl.strohalm.cyclos.utils.database.DatabaseCustomFieldHandler.java
/** * Appends the inner joins for each custom field. Should be invoked when * building the from part of the query.//ww w. j a va 2 s .co m * * @param hql The current HQL buffer * @param fieldValuesPath The path on the query for the custom fields value * collection * @param values The custom field values used to filter */ public void appendJoins(final StringBuilder hql, final String fieldValuesPath, final Collection<? extends CustomFieldValue> values) { if (values == null || values.isEmpty()) { return; } for (final CustomFieldValue fieldValue : values) { CustomField field = fieldValue.getField(); if (field == null) { continue; } String value = fieldValue.getValue(); // Remove any manually entered '%' value = StringUtils.trimToNull(StringUtils.replace(value, "%", "")); if (value == null) { continue; } field = fetchDao.fetch(field); hql.append(" inner join ").append(fieldValuesPath).append(' ').append(alias(field)); } }
From source file:nl.strohalm.cyclos.utils.database.DatabaseHelper.java
private static void doAddLike(final StringBuilder hql, final Map<String, Object> namedParameters, final String path, String value, final boolean rightOnly) { value = StringUtils.trimToNull(value); if (value == null) { return;//w ww . ja v a2s. c o m } // Remove any manually entered '%' value = StringUtils.trimToNull(StringUtils.replace(value, "%", "")); if (value == null) { return; } // Assuming the default database collation is case insensitive, we don't need to perform case transformations if (rightOnly) { value += "%"; } else { value = "%" + value + "%"; } addParameterToQueryOperator(hql, namedParameters, path, "like", value); }