/** * Get the metadata properties for the indicated object. * * @param oid The object we want config for */ private Properties getObjectMetadata(String oid) { try { DigitalObject object = storage.getObject(oid); return object.getMetadata(); } catch (StorageException ex) { log.error("Error accessing object '{}' in storage: ", oid, ex); return null; } }
/** * Utility method for accessing object properties. Since null testing is * awkward in velocity, an unset property is changed to en empty string ie. * (""). * * @param object: The object to extract the property from * @param field: The field name of the property * @return String: The value of the property, or and empty string. */ public String getMetadata(DigitalObject object, String field) { if (object == null) { log.error("NULL object provided!"); return ""; } try { Properties metadata = object.getMetadata(); String result = metadata.getProperty(field); if (result == null) { return ""; } else { return result; } } catch (StorageException ex) { log.error("Error accessing object metadata: ", ex); return ""; } }
/** * Get the metadata properties for the indicated object. * * @param oid * The object we want config for */ private Properties getObjectMetadata(String oid) { try { DigitalObject object = storage.getObject(oid); return object.getMetadata(); } catch (StorageException ex) { log.error("Error accessing object '{}' in storage: ", oid, ex); return null; } }
/** * Retrieve the metadata properties from storage for the request OID. * * @param oid The Object ID of the object in storage * @return Properties An instantiated Properties Object, or null for errors */ private Properties getMetadata(String oid) { // Get the object from storage DigitalObject digitalObject = null; try { digitalObject = storage.getObject(oid); } catch (StorageException ex) { log.error("Retrieving OID '{}' failed!: ", oid, ex); return null; } // Retrieve the key/value metadata list try { return digitalObject.getMetadata(); } catch (StorageException ex) { log.error("Retrieving metadata for OID '{}' failed!: ", oid, ex); return null; } }
/** * Clear the render flag for objects that have finished in the tool chain * * @param oid The object to clear */ private void clearRenderFlag(String oid) { try { DigitalObject object = storage.getObject(oid); Properties props = object.getMetadata(); props.setProperty("render-pending", "false"); object.close(); } catch (StorageException ex) { log.error("Error accessing storage for '{}'", oid, ex); } }
/** * Set the render flag for objects that are starting in the tool chain * * @param oid The object to set */ private void setRenderFlag(String oid) { try { DigitalObject object = storage.getObject(oid); Properties props = object.getMetadata(); props.setProperty("render-pending", "true"); object.close(); } catch (StorageException ex) { log.error("Error accessing storage for '{}'", oid, ex); } }
/** * Clear the render flag for objects that have finished in the tool chain * * @param oid * The object to clear */ private void clearRenderFlag(String oid) { try { DigitalObject object = storage.getObject(oid); Properties props = object.getMetadata(); props.setProperty("render-pending", "false"); object.close(); } catch (StorageException ex) { log.error("Error accessing storage for '{}'", oid, ex); } }
/** * Set the render flag for objects that are starting in the tool chain * * @param oid * The object to set */ private void setRenderFlag(String oid) { try { DigitalObject object = storage.getObject(oid); Properties props = object.getMetadata(); props.setProperty("render-pending", "true"); object.close(); } catch (StorageException ex) { log.error("Error accessing storage for '{}'", oid, ex); } }
/** * Indexing single object * * TODO: Might let the user to fill in form in the portal regards to which * rules to be used * * @param objectId Object Id to be indexed */ public void indexObject(String objectId) { DigitalObject object = null; try { object = realStorage.getObject(objectId); } catch (StorageException ex) { log.error("Error getting object", ex); } try { Properties sofMeta = object.getMetadata(); String rulesOid = sofMeta.getProperty("rulesOid"); if (!rulesList.contains(rulesOid)) { updateRules(rulesOid); rulesList.add(rulesOid); } processObject(object, rulesOid, null, true); } catch (StorageException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
Properties props = object.getMetadata(); props.setProperty("render-pending", "true"); String configOid = props.getProperty("jsonConfigOid");
Properties metadata = object.getMetadata(); configOid = metadata.getProperty("jsonConfigOid"); configPid = metadata.getProperty("jsonConfigPid");
Properties metadata = object.getMetadata(); configOid = metadata.getProperty("jsonConfigOid"); configPid = metadata.getProperty("jsonConfigPid");
props = object.getMetadata(); } catch (StorageException ex) { throw new IndexerException("Failed loading properties : ", ex); object.close(); try { props = object.getMetadata(); } catch (StorageException ex) { throw new IndexerException("Failed loading properties : ",
Properties tfMetadata; try { tfMetadata = in.getMetadata(); } catch (StorageException e) { throw new TransformerException(e);
Properties props = object.getMetadata(); String indexFlag = props.getProperty("indexOnHarvest"); if (indexFlag != null) {
private Properties setObjectMetadata(DigitalObject recordObject, JsonObject record, String packageType, boolean created) throws IOException, StorageException { Properties objectMetadata = recordObject.getMetadata();
@ApiOperation(value = "gets the record's Object Metadata", tags="objectmeta") @ApiResponses({ @ApiResponse(code = 200, message = "The object metadata is returned"), @ApiResponse(code = 500, message = "General Error", response = Exception.class) }) @Get("json") public String getMetadataResource() throws StorageException, IOException { Storage storage = (Storage) ApplicationContextProvider.getApplicationContext().getBean("fascinatorStorage"); String oid = getAttribute("oid"); DigitalObject digitalObject = StorageUtils.getDigitalObject(storage, oid); Properties metadata = digitalObject.getMetadata(); JsonObject jsonObject = new JsonObject(); for (Object keyObject : metadata.keySet()) { jsonObject.put((String) keyObject, metadata.getProperty((String) keyObject)); } return new JsonSimple(jsonObject).toString(true); }
object.getMetadata().setProperty("render-pending", "true"); object.close(); } catch (Exception ex) {
@ApiOperation(value = "updates the record's Object Metadata", tags="objectmeta") @ApiImplicitParams({ @ApiImplicitParam(name = "skipReindex", value="Skip the reindex process. Useful if you are batching many changes to a ReDBox object at once.", required = false, allowMultiple = false, defaultValue = "false", dataType = "string") }) @ApiResponses({ @ApiResponse(code = 200, message = "The object metadata is updated"), @ApiResponse(code = 500, message = "General Error", response = Exception.class) }) @Post("json") public String updateMetadataResource(JsonRepresentation data) throws IOException, PluginException, MessagingException { Storage storage = (Storage) ApplicationContextProvider.getApplicationContext().getBean("fascinatorStorage"); String oid = getAttribute("oid"); JsonSimple metadataJson = new JsonSimple(data.getText()); JsonObject metadataObject = metadataJson.getJsonObject(); DigitalObject digitalObject = StorageUtils.getDigitalObject(storage, oid); Properties metadata = digitalObject.getMetadata(); for (Object key : metadataObject.keySet()) { metadata.setProperty((String) key, (String) metadataObject.get(key)); } ByteArrayOutputStream output = new ByteArrayOutputStream(); metadata.store(output, null); ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray()); StorageUtils.createOrUpdatePayload(digitalObject, "TF-OBJ-META", input); reindex(oid); return getSuccessResponseString(oid); }
metadata = in.getMetadata(); } catch (StorageException ex) { error("Error reading Object metadata!\nOID: '" + oid + "'", ex);