@Override public InputStream getStream(DatabaseFile df) { GridFSDBFile file = pipelinefs.findOne(new BasicDBObject(MongoDocument.MONGO_ID_KEY, df.getId())); return file==null ? null : file.getInputStream(); }
/** * May return null if and only if a referenced stage library was not found in the database. */ public Set<DatabaseFile> getDatabaseFiles() { Map<Object, DatabaseFile> files = new HashMap<Object, DatabaseFile>(); for(Stage s : stages.values()) { if(s.getDatabaseFile()==null) { logger.error("Stage group '"+s.getName()+"' is missing it's library file"); return null; } else if(!files.containsKey(s.getDatabaseFile().getId())) { files.put(s.getDatabaseFile().getId(), s.getDatabaseFile()); } } return new HashSet<DatabaseFile>(files.values()); }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; DatabaseFile other = (DatabaseFile) obj; if(equal(other.getFilename(), filename) && equal(other.getUploadDate(), getUploadDate()) && equal(other.getId(), id)) { return true; } return false; }
if(s.getDatabaseFile().getId().equals(cmd.getOptionValue("i"))) { stagesToDelete.add(s);
private DBObject getStageDBObject(Stage s, String group) { BasicDBObject obj = new BasicDBObject(); obj.put(MongoPipelineReader.STAGE_KEY, s.getName()); obj.put(MongoPipelineReader.TYPE_KEY, MongoPipelineReader.STAGE_TYPE); BasicDBObject props = new BasicDBObject(); if(s.isPropertiesChanged()) { props.put(MongoPipelineReader.PROPERTIES_DATE_SUBKEY, new Date()); } else { props.put(MongoPipelineReader.PROPERTIES_DATE_SUBKEY, s.getPropertiesModifiedDate()); } props.put(MongoPipelineReader.PROPERTIES_MAP_SUBKEY, s.getProperties()); obj.put(MongoPipelineReader.PROPERTIES_KEY, props); obj.put(MongoPipelineReader.ACTIVE_KEY, s.getMode().toString()); obj.put(MongoPipelineReader.GROUP_KEY, group); if(s.getDatabaseFile()!=null) { obj.put(MongoPipelineReader.FILE_KEY, s.getDatabaseFile().getId()); } return obj; }