public MockMetadataValue(MetadataValue metadataValue) { MetadataField metadataField = metadataValue.getMetadataField(); MetadataSchema metadataSchema = metadataField.getMetadataSchema(); schema = metadataSchema.getName(); element = metadataField.getElement(); qualifier = metadataField.getQualifier(); language = metadataValue.getLanguage(); value = metadataValue.getValue(); authority = metadataValue.getAuthority(); confidence = metadataValue.getConfidence(); }
@Override public MetadataValue create(Context context, DSpaceObject dso, MetadataField metadataField) throws SQLException { MetadataValue metadataValue = new MetadataValue(); metadataValue.setMetadataField(metadataField); metadataValue.setDSpaceObject(dso); dso.addMetadata(metadataValue); //An update here isn't needed, this is persited upon the merge of the owning object // metadataValueDAO.save(context, metadataValue); metadataValue = metadataValueDAO.create(context, metadataValue); return metadataValue; }
/** * Normalize the title of a Metadatum. * * @param value metadata value * @return normalized title */ protected String normalizeTitle(MetadataValue value) { if (!"title".equals(element)) { return value.getValue(); } return OrderFormat.makeSortString(value.getValue(), value.getLanguage(), OrderFormat.TITLE); } }
/** * Get display of Metadatum * * @param dcv MetadataValue * @return string displaying elements of the Metadatum */ public static String getDCValueString(MetadataValue dcv) { MetadataField metadataField = dcv.getMetadataField(); MetadataSchema metadataSchema = metadataField.getMetadataSchema(); return "schema: " + metadataSchema.getName() + "; element: " + metadataField .getElement() + "; qualifier: " + metadataField.getQualifier() + "; language: " + dcv.getLanguage() + "; value: " + dcv.getValue(); }
@Override public void additionalIndex(Context context, DSpaceObject dso, SolrInputDocument document) { if (dso instanceof Item) { Item item = (Item) dso; List<MetadataValue> dcValues = itemService.getMetadata(item, Item.ANY, Item.ANY, Item.ANY, Item.ANY); List<String> toIgnoreMetadataFields = SearchUtils.getIgnoredMetadataFields(item.getType()); for (MetadataValue dcValue : dcValues) { if (!toIgnoreMetadataFields.contains(dcValue.getMetadataField().toString('.'))) { document.addField("a_spell", dcValue.getValue()); } } } } }
@Override public List<String> getVariants(MetadataValue metadataValue) { ChoiceAuthority ma = getChoiceAuthorityMap().get(metadataValue.getMetadataField().toString()); if (ma instanceof AuthorityVariantsSupport) { AuthorityVariantsSupport avs = (AuthorityVariantsSupport) ma; return avs.getVariants(metadataValue.getAuthority(), metadataValue.getLanguage()); } return null; }
int i = 0; for (MetadataValue dcv : current) { if (dcv.getAuthority() == null || !isAuthorityControlledField(md)) { dcvalues[i] = dcv.getValue(); } else { dcvalues[i] = dcv.getValue() + csv.getAuthoritySeparator() + dcv.getAuthority(); dcvalues[i] += csv.getAuthoritySeparator() + (dcv.getConfidence() != -1 ? dcv .getConfidence() : Choices.CF_ACCEPTED); ",found=" + dcv.getValue()));
/** * Retrieve the place of the metadata value * * @param fieldToLastPlace the map containing the latest place of each metadata field * @param metadataValue the metadata value that needs to get a place * @return The new place for the metadata valu */ protected int getMetadataValuePlace(Map<MetadataField, Integer> fieldToLastPlace, MetadataValue metadataValue) { MetadataField metadataField = metadataValue.getMetadataField(); if (fieldToLastPlace.containsKey(metadataField)) { fieldToLastPlace.put(metadataField, fieldToLastPlace.get(metadataField) + 1); } else { // The metadata value place starts at 0 fieldToLastPlace.put(metadataField, 0); } return fieldToLastPlace.get(metadataField); }
List<MetadataValue> metadataValues = itemService.getMetadataByMetadataString(item, metadataField); for (MetadataValue metadataValue : metadataValues) { String content = metadataValue.getValue(); String authorityKey = metadataValue.getAuthority();
String language, MetadataValue metadataValue) { MetadataField metadataField = metadataValue.getMetadataField(); MetadataSchema metadataSchema = metadataField.getMetadataSchema(); if (metadataValue.getLanguage() != null) { if (!language.equals(metadataValue.getLanguage())) { return false;
@Override public String getLabel(MetadataValue metadataValue, String locale) { return getLabel(metadataValue.getMetadataField().toString(), metadataValue.getAuthority(), locale); }
metadataValue.setLanguage(lang == null ? null : lang.trim()); metadataValue.setAuthority(authorities.get(i)); metadataValue.setConfidence(confidences == null ? Choices.CF_NOVALUE : confidences.get(i)); } else { metadataValue.setAuthority(null); metadataValue.setConfidence(confidences == null ? Choices.CF_UNSET : confidences.get(i)); if (authorityRequired && (metadataValue.getAuthority() == null || metadataValue.getAuthority() .length() == 0)) { throw new IllegalArgumentException("The metadata field \"" + metadataField metadataValue.setValue(String.valueOf(dcvalue)); metadataValue.setValue(null);
@Override public List<String> getISSNs(Context context, Item item) { List<String> values = new ArrayList<String>(); for (String metadata : metadataList) { List<MetadataValue> dcvalues = itemService.getMetadataByMetadataString(item, metadata); for (MetadataValue dcvalue : dcvalues) { String authority = dcvalue.getAuthority(); if (authority != null) { values.add(authority); } } } return values; } }
MetadataField metadataField = dcv.getMetadataField(); String qualifier = metadataField.getQualifier(); String language = dcv.getLanguage(); + "qualifier=\"" + qualifier + "\"" + language + ">" + Utils.addEntities(dcv.getValue()) + "</dcvalue>\n") .getBytes("UTF-8"); ("date".equals(metadataField.getElement()) && "available".equals(qualifier)) || ("identifier".equals(metadataField.getElement()) && "uri".equals(qualifier) && (dcv.getValue() != null && dcv.getValue().startsWith( handleService.getCanonicalPrefix() + handleService.getPrefix() + "/"))) || ("description".equals(metadataField.getElement()) && "provenance".equals(qualifier)) || dateIssued = dcv.getValue(); dateAccessioned = dcv.getValue();
@Override protected List<String> getURLs(Item item) { // Get all metadata elements that start with http:// or https:// List<MetadataValue> urls = itemService.getMetadata(item, Item.ANY, Item.ANY, Item.ANY, Item.ANY); ArrayList<String> theURLs = new ArrayList<String>(); for (MetadataValue url : urls) { if ((url.getValue().startsWith("http://")) || (url.getValue().startsWith("https://"))) { theURLs.add(url.getValue()); } } return theURLs; } }
MetadataField field = dcv.getMetadataField(); String valueMatch = field.getMetadataSchema().getName() + "." + field.getElement(); String value = this.dcMap.get(key); if (valueMatch.equals(value)) { md.addDublinCore(key, dcv.getValue()); String value = this.atomMap.get(key); if (valueMatch.equals(value)) { md.addAtom(key, dcv.getValue());
/** * Construct metadata field name out of Metadatum components * * @param v The Metadatum to construct a name for. * @return The complete metadata field name. */ protected String buildFieldName(MetadataValue v) { StringBuilder name = new StringBuilder(); MetadataField metadataField = v.getMetadataField(); MetadataSchema metadataSchema = v.getMetadataField().getMetadataSchema(); name.append(metadataSchema.getName()).append(".").append(metadataField.getElement()); if (null != metadataField.getQualifier()) { name.append("." + metadataField.getQualifier()); } return name.toString(); }
@Override public List<MetadataValue> getMetadata(T dso, String schema, String element, String qualifier, String lang, String authority) { List<MetadataValue> metadata = getMetadata(dso, schema, element, qualifier, lang); List<MetadataValue> result = new ArrayList<>(metadata); if (!authority.equals(Item.ANY)) { Iterator<MetadataValue> iterator = result.iterator(); while (iterator.hasNext()) { MetadataValue metadataValue = iterator.next(); if (!authority.equals(metadataValue.getAuthority())) { iterator.remove(); } } } return result; }
for (MetadataValue rr : list) { if (idx == to && to < from) { addMetadata(context, dso, schema, element, qualifier, moved.getLanguage(), moved.getValue(), moved.getAuthority(), moved.getConfidence()); last = false; addMetadata(context, dso, schema, element, qualifier, rr.getLanguage(), rr.getValue(), rr.getAuthority(), rr.getConfidence()); addMetadata(context, dso, schema, element, qualifier, moved.getLanguage(), moved.getValue(), moved.getAuthority(), moved.getConfidence()); last = false; addMetadata(context, dso, schema, element, qualifier, moved.getLanguage(), moved.getValue(), moved.getAuthority(), moved.getConfidence());