/** * Add the date of publication from the bibliographic metadata * * @param item target item * @param receipt deposit receipt */ protected void addPublishDate(Item item, DepositReceipt receipt) { List<MetadataValue> dcv = itemService.getMetadataByMetadataString( item, "dc.date.issued"); if (dcv != null && dcv.size() == 1) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date published = sdf.parse(dcv.get(0).getValue()); receipt.getWrappedEntry().setPublished(published); } catch (ParseException e) { // we tried, but never mind log.warn("Couldn't add published date", e); } } }
String value = atom.get(element); if ("author".equals(element)) { receipt.getWrappedEntry().addAuthor(value); } else if ("published".equals(element)) { receipt.getWrappedEntry().setPublished(value); } else if ("rights".equals(element)) { receipt.getWrappedEntry().setRights(value); } else if ("summary".equals(element)) { receipt.getWrappedEntry().setSummary(value); } else if ("title".equals(element)) { receipt.getWrappedEntry().setTitle(value); } else if ("updated".equals(element)) { receipt.getWrappedEntry().setUpdated(value);
/** * Add the date of publication from the bibliographic metadata * * @param result represents the results of a deposit request * @param receipt deposit receipt */ protected void addPublishDate(DepositResult result, DepositReceipt receipt) { List<MetadataValue> dcv = itemService.getMetadataByMetadataString( result.getItem(), "dc.date.issued"); if (dcv != null && !dcv.isEmpty()) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date published = sdf.parse(dcv.get(0).getValue()); receipt.getWrappedEntry().setPublished(published); } catch (ParseException e) { // we tried, but never mind log.warn("Couldn't add published date", e); } } }
/** * Add the date that this item was last updated * * @param item target item * @param receipt deposit receipt */ protected void addLastUpdatedDate(Item item, DepositReceipt receipt) { String config = ConfigurationManager.getProperty( "swordv2-server", "updated.field"); List<MetadataValue> dcv = itemService.getMetadataByMetadataString( item, config); if (dcv != null && dcv.size() == 1) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date updated = sdf.parse(dcv.get(0).getValue()); receipt.getWrappedEntry().setUpdated(updated); } catch (ParseException e) { // we tried, but never mind log.warn("Couldn't add last updated date", e); } } } }
/** * Add the date that this item was last updated * * @param result represents the results of a deposit request * @param receipt deposit receipt */ protected void addLastUpdatedDate(DepositResult result, DepositReceipt receipt) { String config = ConfigurationManager.getProperty( "swordv2-server", "updated.field"); List<MetadataValue> dcv = itemService.getMetadataByMetadataString( result.getItem(), config); if (dcv != null && dcv.size() == 1) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date updated = sdf.parse(dcv.get(0).getValue()); receipt.getWrappedEntry().setUpdated(updated); } catch (ParseException e) { // we tried, but never mind log.warn("Couldn't add last updated date", e); } } }
/** * Add all the subject classifications from the bibliographic * metadata. * * @param item target item * @param receipt deposit receipt */ protected void addCategories(Item item, DepositReceipt receipt) { List<MetadataValue> dcv = itemService .getMetadataByMetadataString(item, "dc.subject.*"); if (dcv != null) { for (MetadataValue aDcv : dcv) { receipt.getWrappedEntry().addCategory( UriRegistry.DC_NAMESPACE, aDcv.getValue(), aDcv.getValue()); } } }
public void addMetadata(MCRObject object, DepositReceipt receipt) throws SwordError { final MCRBaseContent mcrBaseContent = new MCRBaseContent(object); final MCRContent mcrContent; try { mcrContent = XSL_MODS_DC_TRANSFORMER.transform(mcrBaseContent); } catch (IOException e) { throw new SwordError(UriRegistry.ERROR_BAD_REQUEST, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "Error while transforming mods2dc!", e); } final List<Element> elementList; try { elementList = mcrContent.asXML().getRootElement().getChildren(); } catch (JDOMException | IOException | SAXException e) { throw new SwordError(UriRegistry.ERROR_BAD_REQUEST, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "Error getting transform result of mods to dc transformation!", e); } elementList.stream() .filter(dcElement -> dcElement.getText().trim().length() > 0) .forEach(dcElement -> { receipt.addDublinCore(dcElement.getName(), dcElement.getText().trim()); }); MCRSwordUtil.addDatesToEntry(receipt.getWrappedEntry(), object); }
/** * Add all the subject classifications from the bibliographic * metadata. * * @param result represents the results of a deposit request * @param receipt deposit receipt */ protected void addCategories(DepositResult result, DepositReceipt receipt) { List<MetadataValue> dcv = itemService.getMetadataByMetadataString( result.getItem(), "dc.subject.*"); if (dcv != null) { for (MetadataValue aDcv : dcv) { receipt.getWrappedEntry().addCategory( UriRegistry.DC_NAMESPACE, aDcv.getValue(), aDcv.getValue()); } } }
@Override public DepositReceipt provideMetadata(MCRObject object) throws SwordError { final IRI iri = new IRI(MCRSwordUtil.BuildLinkUtil.getEditHref(this.lifecycleConfiguration.getCollection(), object.getId().toString())); final DepositReceipt depositReceipt = MCRSwordUtil.buildDepositReceipt(iri); addMetadata(object, depositReceipt); final Entry we = depositReceipt.getWrappedEntry(); MCRSwordUtil.BuildLinkUtil .getEditMediaIRIStream(this.lifecycleConfiguration.getCollection(), object.getId().toString()) .forEach(we::addLink); return depositReceipt; }
receipt.getWrappedEntry().setRights(rightsString.toString());
receipt.getWrappedEntry().setRights(rightsString.toString());