annotate src/main/java/de/mpiwg/indexmeta/services/DataProvider.java @ 7:bc57f2660b0f

implementation of web service
author Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
date Fri, 12 Apr 2013 17:48:42 +0200
parents
children 9ce7979fd037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
1 package de.mpiwg.indexmeta.services;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
2
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
3 import java.util.ArrayList;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
4 import java.util.List;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
5
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
6 import org.apache.log4j.Logger;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
7
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
8 import de.mpiwg.indexmeta.bo.Contextualization;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
9
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
10 public class DataProvider {
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
11
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
12 protected static Logger logger = Logger.getLogger(DataProvider.class);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
13
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
14 public DataProvider(){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
15 logger.info("Starting DataProvider *********");
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
16 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
17
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
18 private PersistentService ps = new PersistentService();
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
19
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
20 public List<Contextualization> getCtxByIndexMetaId(String indexMetaId){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
21 //QuadKey(indexMetaId, type, remoteId, id)
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
22 return ps.getCtxMap().getValuesByFirstKey(indexMetaId);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
23 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
24
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
25 public List<Contextualization> getCtxByType(String type){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
26 //QuadKey(indexMetaId, type, remoteId, id)
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
27 return ps.getCtxMap().getValuesBySecondKey(type);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
28 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
29
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
30 public List<Contextualization> getCtxByRemoteId(String remoteId){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
31 //QuadKey(indexMetaId, type, remoteId, id)
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
32 return ps.getCtxMap().getValuesByThirdKey(remoteId);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
33 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
34
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
35 public List<Contextualization> getCtx(String indexMetaId, String elementId){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
36 List<Contextualization> rs = new ArrayList<Contextualization>();
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
37
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
38 for(Contextualization ctx : ps.getCtxMap().getValuesByFirstKey(indexMetaId)){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
39 if(ctx.getElementId().equals(elementId)){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
40 rs.add(ctx);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
41 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
42 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
43 return rs;
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
44 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
45
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
46 public Contextualization getCtx(Long id){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
47 return ps.getCtxMap().getValuesByOwnKey(id);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
48 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
49
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
50 public void saveCtx(Contextualization ctx){
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
51 ps.saveCtx(ctx);
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
52 }
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
53
bc57f2660b0f implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff changeset
54 }