Mercurial > hg > ismi-richfaces
view src/main/java/de/mpiwg/itgroup/ismi/merge/PublicByAuthorBean.java @ 165:85fdcca37a0d public_by_author
working on public by author feature...
author | Robert Casties <casties@mpiwg-berlin.mpg.de> |
---|---|
date | Tue, 29 May 2018 21:04:13 +0200 |
parents | 3c83f42a8a39 |
children | e9ab943ec528 |
line wrap: on
line source
package de.mpiwg.itgroup.ismi.merge; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.faces.event.ActionEvent; import javax.faces.event.ValueChangeEvent; import javax.faces.model.SelectItem; import org.apache.log4j.Logger; import org.mpi.openmind.search.utils.ResultEntry; import org.mpi.openmind.search.utils.SAttributeMultipleName; import org.mpi.openmind.search.utils.SEntity; import org.mpi.openmind.search.utils.SRelation; import de.mpiwg.itgroup.ismi.entry.beans.AbstractISMIBean; public class PublicByAuthorBean extends AbstractISMIBean implements Serializable{ private static Logger logger = Logger.getLogger(PublicByAuthorBean.class); private static final long serialVersionUID = 1L; private String currentTemplate; private static List<SelectItem> templateList; private String findAuthorName = ""; private boolean searched = false; private long timeExecution; private List<ResultEntry> rs; static{ templateList = new ArrayList<SelectItem>(); //templateList.add(new SelectItem("sample01")); templateList.add(new SelectItem("witness4Title", "Witnesses for a title")); //templateList.add(new SelectItem("sample03")); //templateList.add(new SelectItem("sample04")); //templateList.add(new SelectItem("sample05")); templateList.add(new SelectItem("titles4Person", "Titles for a person")); templateList.add(new SelectItem("codexOwnership", "Codex ownership")); //templateList.add(new SelectItem("sample07")); //templateList.add(new SelectItem("sample08")); //templateList.add(new SelectItem("sample09")); } public PublicByAuthorBean(){ //logger.info("AdvancedSearchBean"); this.reset(); } public void reset(){ //logger.info("AdvancedSearchBean.reset()"); currentTemplate = "witness4Title"; } public void listenerChange(ValueChangeEvent event){ /* logger.info(event.getOldValue()); logger.info(event.getNewValue()); */ } public void listenerFindAuthorSearch(ActionEvent event){ try { long start = System.currentTimeMillis(); this.search(); long end = System.currentTimeMillis(); this.searched = true; this.timeExecution = end - start; logger.info(toString() + " time execution=" + (timeExecution)); } catch (Exception e) { logger.error(e.getMessage(), e); printInternalError(e); } } public String actionSearch(){ this.search(); return null; } public void search(){ long start = System.currentTimeMillis(); rs = sample06(); //printRs(rs); long end = System.currentTimeMillis(); logger.info("execution time [ms] = " + (end - start)); logger.info("Search resultSet size= " + this.rs.size()); } /** * 6) Bring up people associated with a particular title (not just one huge list of people, but be able to distinguish author, student, teacher) * @return */ private List<ResultEntry> sample06(){ List<SEntity> entFilters = new ArrayList<SEntity>(); List<SRelation> relFilters = new ArrayList<SRelation>(); //alias, "is_prime_alias_name_of", "PERSON" //alias, "is_alias_name_of", "PERSON" SEntity person = new SEntity(1, "PERSON"); person.addAtt(new SAttributeMultipleName("a", "name_translit", "name")); entFilters.add(person); /* SEntity alias = new SEntity(1, "ALIAS"); alias.addAtt(new SAttributeUniqueName("alias", "abu")); entFilters.add(alias); */ /* SEntity title = new SEntity(2, "TEXT"); title.addAtt(new SAttributeMultipleName("abu", "full_title_translit", "full_title")); entFilters.add(title); */ /* SRelationMultipleName title_to_person = new SRelationMultipleName(title, person, "had_patron", "was_dedicated_to", "was_created_by"); relFilters.add(title_to_person); */ List<ResultEntry> rs = getAppBean().getSS().search(entFilters, relFilters); return rs; } public String getCurrentTemplate() { return currentTemplate; } public void setCurrentTemplate(String currentTemplate) { this.currentTemplate = currentTemplate; } public List<SelectItem> getTemplateList() { return templateList; } /** * @return the findAuthorName */ public String getFindAuthorName() { return findAuthorName; } /** * @param findAuthorName the findAuthorName to set */ public void setFindAuthorName(String findAuthorName) { this.findAuthorName = findAuthorName; } /** * @return the rs */ public List<ResultEntry> getRs() { return rs; } /** * @return the searched */ public boolean isSearched() { return searched; } }