diff src/main/java/de/mpiwg/itgroup/ismi/utils/templates/DigitalizationTemplate.java @ 1:2e911857a759

(none)
author jurzua
date Wed, 29 Oct 2014 14:00:28 +0000
parents
children 135b29621a32
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/de/mpiwg/itgroup/ismi/utils/templates/DigitalizationTemplate.java	Wed Oct 29 14:00:28 2014 +0000
@@ -0,0 +1,73 @@
+package de.mpiwg.itgroup.ismi.utils.templates;
+
+import java.util.List;
+
+import org.mpi.openmind.cache.WrapperService;
+import org.mpi.openmind.repository.bo.Entity;
+
+public class DigitalizationTemplate implements Comparable<DigitalizationTemplate>{
+	
+	private String codexOv;
+	private String codexId;
+	private Entity entity;
+	private String pages;
+	private List<Entity> titlesInCodex;
+	
+	private WrapperService om;
+	private boolean initialized = false;
+	
+	private boolean hasCodex = false;
+	
+	public DigitalizationTemplate(Entity digi, WrapperService om){
+		this.entity = digi;
+		this.om = om;
+	}
+	
+	public void init(){
+		this.initialized = true;
+		this.pages = om.getAttributeByName(entity.getId(), "num_files").getValue();
+		
+		List<Entity> list = om.getTargetsForSourceRelation(entity, "is_digitalization_of", "CODEX", 1);
+		if(list.size() > 0){
+			Entity codex = list.get(0);
+			this.codexOv = codex.getOwnValue();
+			this.codexId = codex.getId().toString();
+			this.titlesInCodex = om.getSourcesForTargetRelation(codex, "is_part_of", "WITNESS", -1);
+			this.hasCodex = true;
+		}
+	}
+
+	public boolean isHasCodex(){
+		return this.hasCodex;
+	}
+	
+	public String getCodexId() {
+		if(!initialized)
+			this.init();
+		return codexId;
+	}
+
+	public Entity getEntity() {
+		return entity;
+	}
+	
+	public String getCodexOv(){
+		return this.codexOv;
+	}
+
+	public String getPages() {
+		if(!initialized)
+			this.init();
+		return pages;
+	}
+
+	public List<Entity> getTitlesInCodex() {
+		if(!initialized)
+			this.init();
+		return titlesInCodex;
+	}
+	
+	public int compareTo(DigitalizationTemplate o) { 
+		return this.entity.getOwnValue().compareTo(o.getEntity().getOwnValue()); 
+	}
+}