| margaretha | 9ebbb25 | 2017-11-23 16:40:08 +0100 | [diff] [blame] | 1 | package de.ids_mannheim.korap.sru; |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 2 | |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 3 | import java.util.ArrayList; |
| 4 | import java.util.List; |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 5 | import java.util.regex.Matcher; |
| 6 | import java.util.regex.Pattern; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 7 | |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 8 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; |
| margaretha | 4ec2cd3 | 2016-02-29 09:46:36 +0000 | [diff] [blame] | 9 | import com.fasterxml.jackson.annotation.JsonProperty; |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 10 | |
| 11 | @JsonIgnoreProperties(ignoreUnknown = true) |
| 12 | public class KorapMatch { |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 13 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 14 | private String matchID; |
| 15 | private String positionId; |
| 16 | private String docId; |
| Eliza Margaretha | e0e40a3 | 2016-11-09 19:16:08 +0100 | [diff] [blame] | 17 | private String textId; |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 18 | private String corpusId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 19 | private String leftContext; |
| 20 | private String keyword; |
| 21 | private String rightContext; |
| 22 | private String snippet; |
| 23 | private String text; |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 24 | |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 25 | private List<AnnotationLayer> annotationLayers = new ArrayList<AnnotationLayer>(); |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 26 | |
| Eliza Margaretha | e0e40a3 | 2016-11-09 19:16:08 +0100 | [diff] [blame] | 27 | private static Pattern idPattern = Pattern.compile("match-(.*)/(.*)/(.*)-p([0-9]+-[0-9]+)"); |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 28 | |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 29 | public KorapMatch () {} |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 30 | |
| 31 | @JsonProperty("matchID") |
| 32 | public String getMatchId() { |
| 33 | return matchID; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 34 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 35 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 36 | public void setMatchId(String id) { |
| 37 | this.matchID = id; |
| 38 | } |
| 39 | |
| 40 | public void parseMatchId(){ |
| 41 | Matcher matcher = idPattern.matcher(matchID); |
| 42 | if (matcher.find()){ |
| 43 | this.corpusId = matcher.group(1); |
| 44 | this.docId = matcher.group(2); |
| Eliza Margaretha | e0e40a3 | 2016-11-09 19:16:08 +0100 | [diff] [blame] | 45 | this.setTextId(matcher.group(3)); |
| 46 | this.positionId = "p"+matcher.group(4); |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 47 | } |
| 48 | } |
| 49 | |
| 50 | public void setPositionId(String positionId) { |
| 51 | this.positionId = positionId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 52 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 53 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 54 | public String getPositionId() { |
| 55 | return positionId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 56 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 57 | |
| Eliza Margaretha | e0e40a3 | 2016-11-09 19:16:08 +0100 | [diff] [blame] | 58 | public String getTextId () { |
| 59 | return textId; |
| 60 | } |
| 61 | |
| 62 | public void setTextId (String textId) { |
| 63 | this.textId = textId; |
| 64 | } |
| 65 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 66 | public String getDocId() { |
| 67 | return docId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 68 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 69 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 70 | public void setDocId(String docID) { |
| Eliza Margaretha | e0e40a3 | 2016-11-09 19:16:08 +0100 | [diff] [blame] | 71 | this.docId = docID; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 72 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 73 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 74 | public String getCorpusId() { |
| 75 | return corpusId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 76 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 77 | |
| margaretha | ab24b65 | 2016-08-08 18:58:48 +0200 | [diff] [blame] | 78 | public void setCorpusId(String corpusId) { |
| 79 | this.corpusId = corpusId; |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 80 | } |
| margaretha | 4ec2cd3 | 2016-02-29 09:46:36 +0000 | [diff] [blame] | 81 | |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 82 | public String getLeftContext() { |
| 83 | return leftContext; |
| 84 | } |
| margaretha | 4ec2cd3 | 2016-02-29 09:46:36 +0000 | [diff] [blame] | 85 | |
| margaretha | 4a5f1c2 | 2016-08-03 17:34:32 +0200 | [diff] [blame] | 86 | public String getKeyword() { |
| 87 | return keyword; |
| 88 | } |
| 89 | |
| 90 | public String getRightContext() { |
| 91 | return rightContext; |
| 92 | } |
| 93 | |
| 94 | public void setLeftContext(String leftContext) { |
| 95 | this.leftContext = leftContext; |
| 96 | } |
| 97 | |
| 98 | public void setKeyword(String keyword) { |
| 99 | this.keyword = keyword; |
| 100 | } |
| 101 | |
| 102 | public void setRightContext(String rightContext) { |
| 103 | this.rightContext = rightContext; |
| 104 | } |
| 105 | |
| 106 | public String getSnippet() { |
| 107 | return snippet; |
| 108 | } |
| 109 | |
| 110 | public void setSnippet(String snippet) { |
| 111 | this.snippet = snippet; |
| 112 | } |
| 113 | |
| 114 | public String getText() { |
| 115 | return text; |
| 116 | } |
| 117 | |
| 118 | public void setText(String text) { |
| 119 | this.text = text; |
| 120 | } |
| 121 | |
| 122 | public List<AnnotationLayer> getAnnotationLayers() { |
| 123 | return annotationLayers; |
| 124 | } |
| 125 | |
| 126 | public void setAnnotationLayers(List<AnnotationLayer> annotationLayers) { |
| 127 | this.annotationLayers = annotationLayers; |
| 128 | } |
| margaretha | 3925c7a | 2016-02-24 11:20:49 +0000 | [diff] [blame] | 129 | |
| 130 | } |