List of usage examples for java.time.format DateTimeFormatter ISO_DATE_TIME
DateTimeFormatter ISO_DATE_TIME
To view the source code for java.time.format DateTimeFormatter ISO_DATE_TIME.
Click Source Link
From source file:com.esri.geoportal.harvester.ckan.CkanBroker.java
/** * Parses ISO date/* ww w . j av a 2s . c o m*/ * * @param strDate ISO date as string * @return date object or <code>null</code> if unable to parse date */ private Date parseIsoDate(String strDate) { try { return Date.from(ZonedDateTime.from(DateTimeFormatter.ISO_DATE_TIME.parse(strDate)).toInstant()); } catch (Exception ex) { return null; } }
From source file:com.esri.geoportal.commons.csw.client.impl.Client.java
/** * Parses ISO date// w ww . j a va2s .co m * * @param strDate ISO date as string * @return date object or <code>null</code> if unable to parse date */ private static Date parseIsoDate(String strDate) { try { return Date.from(ZonedDateTime.from(DateTimeFormatter.ISO_DATE_TIME.parse(strDate)).toInstant()); } catch (Exception ex) { return null; } }
From source file:org.apache.drill.exec.store.solr.SolrRecordReader.java
private void processRecord(ValueVector vv, Object fieldValue, int recordCounter) { String fieldValueStr = null;//from w w w . ja va 2 s . c o m byte[] record = null; try { fieldValueStr = fieldValue.toString(); record = fieldValueStr.getBytes(Charsets.UTF_8); if (vv.getClass().equals(NullableVarCharVector.class)) { NullableVarCharVector v = (NullableVarCharVector) vv; v.getMutator().setSafe(recordCounter, record, 0, record.length); v.getMutator().setValueLengthSafe(recordCounter, record.length); } else if (vv.getClass().equals(NullableBigIntVector.class)) { NullableBigIntVector v = (NullableBigIntVector) vv; BigDecimal bd = new BigDecimal(fieldValueStr); v.getMutator().setSafe(recordCounter, bd.longValue()); } else if (vv.getClass().equals(NullableIntVector.class)) { NullableIntVector v = (NullableIntVector) vv; v.getMutator().setSafe(recordCounter, Integer.parseInt(fieldValueStr)); } else if (vv.getClass().equals(NullableFloat8Vector.class)) { NullableFloat8Vector v = (NullableFloat8Vector) vv; Double d = Double.parseDouble(fieldValueStr); v.getMutator().setSafe(recordCounter, d); } else if (vv.getClass().equals(DateVector.class)) { DateVector v = (DateVector) vv; long dtime = 0L; try { TemporalAccessor accessor = SolrRecordReader.timeFormatter.parse(fieldValueStr); Date date = Date.from(Instant.from(accessor)); dtime = date.getTime(); } catch (Exception e) { SimpleDateFormat dateParser = new SimpleDateFormat(SolrRecordReader.defaultDateFormat); dtime = dateParser.parse(fieldValueStr).getTime(); } v.getMutator().setSafe(recordCounter, dtime); } else if (vv.getClass().equals(NullableTimeStampVector.class)) { NullableTimeStampVector v = (NullableTimeStampVector) vv; DateTimeFormatter timeFormatter = DateTimeFormatter.ISO_DATE_TIME; long dtime = 0L; try { TemporalAccessor accessor = timeFormatter.parse(fieldValueStr); Date date = Date.from(Instant.from(accessor)); dtime = date.getTime(); } catch (Exception e) { SimpleDateFormat dateParser = new SimpleDateFormat(SolrRecordReader.defaultDateFormat); dtime = dateParser.parse(fieldValueStr).getTime(); } v.getMutator().setSafe(recordCounter, dtime); } } catch (Exception e) { SolrRecordReader.logger.error("Error processing record: " + e.getMessage() + vv.getField().getPath() + " Field type " + vv.getField().getType() + " " + vv.getClass()); } }
From source file:org.tightblog.ui.restapi.WeblogEntryController.java
@PostMapping(value = "/{weblogId}/entries") public ResponseEntity postEntry(@PathVariable String weblogId, @Valid @RequestBody WeblogEntry entryData, Locale locale, Principal p) throws ServletException { try {//from w w w . j av a 2s. c o m boolean createNew = false; WeblogEntry entry = null; if (entryData.getId() != null) { entry = weblogEntryRepository.findByIdOrNull(entryData.getId()); } // Check user permissions User user = userRepository.findEnabledByUserName(p.getName()); Weblog weblog = (entry == null) ? weblogRepository.findById(weblogId).orElse(null) : entry.getWeblog(); WeblogRole necessaryRole = (PubStatus.PENDING.equals(entryData.getStatus()) || PubStatus.DRAFT.equals(entryData.getStatus())) ? WeblogRole.EDIT_DRAFT : WeblogRole.POST; if (weblog != null && userManager.checkWeblogRole(user, weblog, necessaryRole)) { // create new? if (entry == null) { createNew = true; entry = new WeblogEntry(); entry.setCreator(user); entry.setWeblog(weblog); entry.setEditFormat(entryData.getEditFormat()); entryData.setWeblog(weblog); } entry.setUpdateTime(Instant.now()); Instant pubTime = calculatePubTime(entryData); entry.setPubTime((pubTime != null) ? pubTime : entry.getUpdateTime()); if (PubStatus.PUBLISHED.equals(entryData.getStatus()) && entry.getPubTime().isAfter(Instant.now().plus(1, ChronoUnit.MINUTES))) { entryData.setStatus(PubStatus.SCHEDULED); } entry.setStatus(entryData.getStatus()); entry.setTitle(entryData.getTitle()); entry.setText(entryData.getText()); entry.setSummary(entryData.getSummary()); entry.setNotes(entryData.getNotes()); if (!StringUtils.isEmpty(entryData.getTagsAsString())) { entry.updateTags( new HashSet<>(Arrays.asList(entryData.getTagsAsString().trim().split("\\s+")))); } else { entry.updateTags(new HashSet<>()); } entry.setSearchDescription(entryData.getSearchDescription()); entry.setEnclosureUrl(entryData.getEnclosureUrl()); WeblogCategory category = weblogCategoryRepository.findById(entryData.getCategory().getId()) .orElse(null); if (category != null) { entry.setCategory(category); } else { throw new IllegalArgumentException("Category is invalid."); } entry.setCommentDays(entryData.getCommentDays()); if (!StringUtils.isEmpty(entry.getEnclosureUrl())) { // Fetch MediaCast resource log.debug("Checking MediaCast attributes"); AtomEnclosure enclosure; try { enclosure = weblogEntryManager.generateEnclosure(entry.getEnclosureUrl()); } catch (IllegalArgumentException e) { BindException be = new BindException(entry, "new data object"); be.addError(new ObjectError("Enclosure URL", messages.getMessage(e.getMessage(), null, locale))); return ResponseEntity.badRequest().body(ValidationError.fromBindingErrors(be)); } // set enclosure attributes entry.setEnclosureUrl(enclosure.getUrl()); entry.setEnclosureType(enclosure.getContentType()); entry.setEnclosureLength(enclosure.getLength()); } weblogEntryManager.saveWeblogEntry(entry); dp.updateLastSitewideChange(); // notify search of the new entry if (entry.isPublished()) { luceneIndexer.updateIndex(entry, false); } else if (!createNew) { luceneIndexer.updateIndex(entry, true); } if (PubStatus.PENDING.equals(entry.getStatus())) { emailService.sendPendingEntryNotice(entry); } SuccessfulSaveResponse ssr = new SuccessfulSaveResponse(); ssr.entryId = entry.getId(); switch (entry.getStatus()) { case DRAFT: ssr.message = messages.getMessage("entryEdit.draftSaved", null, locale); break; case PUBLISHED: ssr.message = messages.getMessage("entryEdit.publishedEntry", null, locale); break; case SCHEDULED: ssr.message = messages.getMessage( "entryEdit.scheduledEntry", new Object[] { DateTimeFormatter.ISO_DATE_TIME .withZone(entry.getWeblog().getZoneId()).format(entry.getPubTime()) }, null, locale); break; case PENDING: ssr.message = messages.getMessage("entryEdit.submittedForReview", null, locale); break; default: } return ResponseEntity.ok(ssr); } else { return ResponseEntity.status(403).body(messages.getMessage("error.title.403", null, locale)); } } catch (Exception e) { throw new ServletException(e.getMessage()); } }