@Override public final Object putMetadataField(String key, Object v) { touchedMetadata.add(key); return getMetadata().put(key, v); }
@SuppressWarnings("unchecked") public Map<String, Object> getMetadataMap() { return getMetadata().toMap(); }
@Override public boolean hasErrors() { return getMetadata().containsField(ERROR_METADATA_KEY); }
@Override public Object getMetadataField(String key) { return getMetadata().get(key); }
private Set<String> getMetadataFields() { return getMetadata().keySet(); }
@Override public void addError(String from, Throwable t) { if(!hasErrors()) { getMetadata().put(ERROR_METADATA_KEY, new BasicDBObject()); } StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); t.printStackTrace(pw); ((BasicDBObject)getMetadata().get(ERROR_METADATA_KEY)).put(from, sw.toString()); touchedMetadata.add(ERROR_METADATA_KEY); }
public final void setFetchedBy(String stage, Date date) { touchedMetadata.add(FETCHED_METADATA_TAG); if(!getMetadata().containsField(FETCHED_METADATA_TAG)) { getMetadata().put(FETCHED_METADATA_TAG, BasicDBObjectBuilder.start(stage, date).get()); } else { ((DBObject) getMetadata().get(FETCHED_METADATA_TAG)).put(stage, date); } }
public final void setTouchedBy(String stage, Date date) { touchedMetadata.add(TOUCHED_METADATA_TAG); if(!getMetadata().containsField(TOUCHED_METADATA_TAG)) { getMetadata().put(TOUCHED_METADATA_TAG, BasicDBObjectBuilder.start(stage, date).get()); } else { ((DBObject) getMetadata().get(TOUCHED_METADATA_TAG)).put(stage, date); } }