Skip to content
Snippets Groups Projects
Commit 87c90698 authored by Eike Cochu's avatar Eike Cochu
Browse files

added filebase and service

cleanup sources
centralized config.properties to vipra-config, link to projects
parent 412d7c0e
Branches
Tags
No related merge requests found
Showing
with 229 additions and 44 deletions
...@@ -271,6 +271,14 @@ ...@@ -271,6 +271,14 @@
}, },
"buffers": "buffers":
[ [
{
"file": "Vagrantfile",
"settings":
{
"buffer_size": 955,
"line_ending": "Unix"
}
}
], ],
"build_system": "", "build_system": "",
"build_system_choices": "build_system_choices":
...@@ -454,6 +462,9 @@ ...@@ -454,6 +462,9 @@
], ],
"file_history": "file_history":
[ [
"/home/eike/.cache/.fr-rPaUI0/LICENSE.txt",
"/home/eike/Repositories/fu/ss15/ma/impl/vipra-rest/src/main/resources/log4j2.xml",
"/home/eike/Repositories/fu/ss15/ma/impl/vipra-config/log4j2.xml",
"/home/eike/Repositories/fu/ss15/ma/impl/vm/data/test-1.json", "/home/eike/Repositories/fu/ss15/ma/impl/vm/data/test-1.json",
"/home/eike/Repositories/fu/ss15/ma/impl/vm/data/test-2.json", "/home/eike/Repositories/fu/ss15/ma/impl/vm/data/test-2.json",
"/home/eike/Repositories/fu/ss15/ma/impl/vm/data/data.json", "/home/eike/Repositories/fu/ss15/ma/impl/vm/data/data.json",
...@@ -888,8 +899,101 @@ ...@@ -888,8 +899,101 @@
"groups": "groups":
[ [
{ {
"selected": 0,
"sheets": "sheets":
[ [
{
"buffer": 0,
"file": "Vagrantfile",
"semi_transient": true,
"settings":
{
"buffer_size": 955,
"regions":
{
},
"selection":
[
[
955,
955
]
],
"settings":
{
"BracketHighlighterBusy": false,
"bh_regions":
[
"bh_default",
"bh_default_center",
"bh_default_open",
"bh_default_close",
"bh_default_content",
"bh_c_define",
"bh_c_define_center",
"bh_c_define_open",
"bh_c_define_close",
"bh_c_define_content",
"bh_square",
"bh_square_center",
"bh_square_open",
"bh_square_close",
"bh_square_content",
"bh_round",
"bh_round_center",
"bh_round_open",
"bh_round_close",
"bh_round_content",
"bh_unmatched",
"bh_unmatched_center",
"bh_unmatched_open",
"bh_unmatched_close",
"bh_unmatched_content",
"bh_regex",
"bh_regex_center",
"bh_regex_open",
"bh_regex_close",
"bh_regex_content",
"bh_double_quote",
"bh_double_quote_center",
"bh_double_quote_open",
"bh_double_quote_close",
"bh_double_quote_content",
"bh_tag",
"bh_tag_center",
"bh_tag_open",
"bh_tag_close",
"bh_tag_content",
"bh_angle",
"bh_angle_center",
"bh_angle_open",
"bh_angle_close",
"bh_angle_content",
"bh_curly",
"bh_curly_center",
"bh_curly_open",
"bh_curly_close",
"bh_curly_content",
"bh_single_quote",
"bh_single_quote_center",
"bh_single_quote_open",
"bh_single_quote_close",
"bh_single_quote_content"
],
"incomplete_sync": null,
"remote_loading": false,
"synced": false,
"syntax": "Packages/Ruby/Ruby.sublime-syntax",
"tab_size": 2,
"translate_tabs_to_spaces": true
},
"translation.x": 0.0,
"translation.y": 0.0,
"zoom_level": 1.0
},
"stack_index": 0,
"type": "text"
}
] ]
} }
], ],
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
<classpathentry combineaccessrules="false" kind="src" path="/vipra-util"/> <classpathentry combineaccessrules="false" kind="src" path="/vipra-util"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
<attributes> <attributes>
<attribute name="owner.project.facets" value="java"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
......
...@@ -33,4 +33,11 @@ ...@@ -33,4 +33,11 @@
<nature>org.eclipse.m2e.core.maven2Nature</nature> <nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature> <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
</natures> </natures>
<linkedResources>
<link>
<name>src/main/resources/config.properties</name>
<type>1</type>
<locationURI>PARENT-1-PROJECT_LOC/vipra-config/config.properties</locationURI>
</link>
</linkedResources>
</projectDescription> </projectDescription>
...@@ -62,7 +62,7 @@ org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line ...@@ -62,7 +62,7 @@ org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
org.eclipse.jdt.core.formatter.comment.format_block_comments=true org.eclipse.jdt.core.formatter.comment.format_block_comments=true
org.eclipse.jdt.core.formatter.comment.format_header=false org.eclipse.jdt.core.formatter.comment.format_header=true
org.eclipse.jdt.core.formatter.comment.format_html=true org.eclipse.jdt.core.formatter.comment.format_html=true
org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
org.eclipse.jdt.core.formatter.comment.format_line_comments=true org.eclipse.jdt.core.formatter.comment.format_line_comments=true
...@@ -91,7 +91,7 @@ org.eclipse.jdt.core.formatter.indent_empty_lines=false ...@@ -91,7 +91,7 @@ org.eclipse.jdt.core.formatter.indent_empty_lines=false
org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.jdt.core.formatter.indentation.size=4 org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
...@@ -278,10 +278,10 @@ org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_decla ...@@ -278,10 +278,10 @@ org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_decla
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
org.eclipse.jdt.core.formatter.join_lines_in_comments=true org.eclipse.jdt.core.formatter.join_lines_in_comments=true
org.eclipse.jdt.core.formatter.join_wrapped_lines=true org.eclipse.jdt.core.formatter.join_wrapped_lines=true
org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=true
org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=true
org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=true
org.eclipse.jdt.core.formatter.lineSplit=120 org.eclipse.jdt.core.formatter.lineSplit=120
org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
...@@ -290,7 +290,7 @@ org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 ...@@ -290,7 +290,7 @@ org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=false org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
......
...@@ -2,7 +2,5 @@ ...@@ -2,7 +2,5 @@
<wb-module deploy-name="vipra-cmd"> <wb-module deploy-name="vipra-cmd">
<wb-resource deploy-path="/" source-path="/src/main/java"/> <wb-resource deploy-path="/" source-path="/src/main/java"/>
<wb-resource deploy-path="/" source-path="/src/main/resources"/> <wb-resource deploy-path="/" source-path="/src/main/resources"/>
<wb-resource deploy-path="/" source-path="/src/test/java"/>
<wb-resource deploy-path="/" source-path="/src/test/resources"/>
</wb-module> </wb-module>
</project-modules> </project-modules>
...@@ -21,7 +21,37 @@ ...@@ -21,7 +21,37 @@
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/mongodb-driver/3.0.4/mongodb-driver-3.0.4.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/mongodb-driver/3.0.4/mongodb-driver-3.0.4.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/bson/3.0.4/bson-3.0.4.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/bson/3.0.4/bson-3.0.4.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/mongodb-driver-core/3.0.4/mongodb-driver-core-3.0.4.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/mongodb/mongodb-driver-core/3.0.4/mongodb-driver-core-3.0.4.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/elasticsearch/elasticsearch/2.1.0/elasticsearch-2.1.0.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-core/5.3.1/lucene-core-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-backward-codecs/5.3.1/lucene-backward-codecs-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-analyzers-common/5.3.1/lucene-analyzers-common-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-queries/5.3.1/lucene-queries-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-memory/5.3.1/lucene-memory-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-highlighter/5.3.1/lucene-highlighter-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-queryparser/5.3.1/lucene-queryparser-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-sandbox/5.3.1/lucene-sandbox-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-suggest/5.3.1/lucene-suggest-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-misc/5.3.1/lucene-misc-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-join/5.3.1/lucene-join-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-grouping/5.3.1/lucene-grouping-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-spatial/5.3.1/lucene-spatial-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/apache/lucene/lucene-spatial3d/5.3.1/lucene-spatial3d-5.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/spatial4j/spatial4j/0.4.1/spatial4j-0.4.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/google/guava/guava/18.0/guava-18.0.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/carrotsearch/hppc/0.7.1/hppc-0.7.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/joda-time/joda-time/2.8.2/joda-time-2.8.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/joda/joda-convert/1.2/joda-convert-1.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.6.2/jackson-core-2.6.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.6.2/jackson-dataformat-smile-2.6.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.6.2/jackson-dataformat-yaml-2.6.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/yaml/snakeyaml/1.15/snakeyaml-1.15.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-cbor/2.6.2/jackson-dataformat-cbor-2.6.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/io/netty/netty/3.10.5.Final/netty-3.10.5.Final.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/ning/compress-lzf/1.0.2/compress-lzf-1.0.2.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/tdunning/t-digest/3.0/t-digest-3.0.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.6/HdrHistogram-2.1.6.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/commons-cli/commons-cli/1.3.1/commons-cli-1.3.1.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/commons-cli/commons-cli/1.3.1/commons-cli-1.3.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/twitter/jsr166e/1.1.0/jsr166e-1.1.0.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar"/>
<zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/junit/junit/4.12/junit-4.12.jar"/> <zipfileset excludes="META-INF/*.SF" src="/home/eike/.m2/repository/junit/junit/4.12/junit-4.12.jar"/>
......
package de.vipra.cmd; package de.vipra.cmd;
import static de.vipra.cmd.CmdOptions.OPT_HELP;
import static de.vipra.cmd.CmdOptions.OPT_IMPORT;
import static de.vipra.cmd.CmdOptions.OPT_SHELL;
import java.io.IOException; import java.io.IOException;
import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.CommandLine;
...@@ -12,8 +16,6 @@ import org.slf4j.LoggerFactory; ...@@ -12,8 +16,6 @@ import org.slf4j.LoggerFactory;
import de.vipra.cmd.option.ImportOption; import de.vipra.cmd.option.ImportOption;
import de.vipra.util.ConfigException; import de.vipra.util.ConfigException;
import static de.vipra.cmd.CmdOptions.*;
public class Main { public class Main {
public static final Logger log = LoggerFactory.getLogger(Main.class); public static final Logger log = LoggerFactory.getLogger(Main.class);
......
package de.vipra.cmd.model;
import org.json.simple.JSONObject;
public class Article extends de.vipra.util.model.Article {
public void fromJSON(JSONObject obj) {
if (obj.containsKey("title")) setTitle(obj.get("title").toString());
if (obj.containsKey("text")) setText(obj.get("text").toString());
if (obj.containsKey("url")) setUrl(obj.get("url").toString());
if (obj.containsKey("date")) setDate(obj.get("date").toString());
}
}
...@@ -7,6 +7,7 @@ import java.io.IOException; ...@@ -7,6 +7,7 @@ import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.bson.Document;
import org.json.simple.JSONArray; import org.json.simple.JSONArray;
import org.json.simple.JSONObject; import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser; import org.json.simple.parser.JSONParser;
...@@ -14,9 +15,14 @@ import org.json.simple.parser.ParseException; ...@@ -14,9 +15,14 @@ import org.json.simple.parser.ParseException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import de.vipra.cmd.ExecutionException; import de.vipra.cmd.ExecutionException;
import de.vipra.cmd.model.Article;
import de.vipra.util.Config; import de.vipra.util.Config;
import de.vipra.util.ConfigException; import de.vipra.util.ConfigException;
import de.vipra.util.Constants;
import de.vipra.util.Mongo; import de.vipra.util.Mongo;
import de.vipra.util.StringUtils; import de.vipra.util.StringUtils;
...@@ -28,7 +34,7 @@ public class ImportOption { ...@@ -28,7 +34,7 @@ public class ImportOption {
private ArrayList<File> files = new ArrayList<>(); private ArrayList<File> files = new ArrayList<>();
private JSONParser parser = new JSONParser(); private JSONParser parser = new JSONParser();
private Config config; private Config config;
private Mongo mongo; private MongoCollection<Document> collection;
public ImportOption(String[] paths) throws ExecutionException { public ImportOption(String[] paths) throws ExecutionException {
addPaths(paths); addPaths(paths);
...@@ -80,7 +86,15 @@ public class ImportOption { ...@@ -80,7 +86,15 @@ public class ImportOption {
try { try {
JSONArray array = (JSONArray) data; JSONArray array = (JSONArray) data;
for (Object object : array) { for (Object object : array) {
List<Exception> errors = new ArrayList<>();
try {
importArticle((JSONObject) object); importArticle((JSONObject) object);
} catch (ExecutionException e) {
errors.add(e);
}
if (errors.size() > 0) {
throw new ExecutionException(errors);
}
} }
return; return;
} catch (ClassCastException e) { } catch (ClassCastException e) {
...@@ -92,18 +106,30 @@ public class ImportOption { ...@@ -92,18 +106,30 @@ public class ImportOption {
} }
} }
private void importArticle(JSONObject obj) { private void importArticle(JSONObject obj) throws ExecutionException {
// 1. add article to mongodb
// 2. add article to file database // 2. add article to file database
// 4. topic modeling // 4. topic modeling
// 3. index article via elasticsearch, include topics // 3. index article via elasticsearch, include topics
out.info("importing \"" + StringUtils.ellipsize(obj.get("title").toString(), 80) + "\""); out.info("importing \"" + StringUtils.ellipsize(obj.get("title").toString(), 80) + "\"");
Article article = new Article();
article.fromJSON(obj);
// add article to mongodb
Document document = article.toDocument();
try {
collection.insertOne(document);
} catch (Exception e) {
throw new ExecutionException("could not create database entry: " + e.getMessage());
}
} }
public void doImport() throws ExecutionException { public void doImport() throws ExecutionException {
try { try {
config = new Config(); config = new Config();
mongo = Mongo.getInstance(config); Mongo mongo = Mongo.getInstance(config);
MongoDatabase db = mongo.getDatabase();
collection = db.getCollection(Constants.Collection.ARTICLES.name);
} catch (IOException | ConfigException e) { } catch (IOException | ConfigException e) {
throw new ExecutionException(e); throw new ExecutionException(e);
} }
......
db.host=localhost db.host=localhost
db.port=27017 db.port=27017
db.name=test db.name=test
fb.path=${datadir}/vipra
\ No newline at end of file
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
</classpathentry> </classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
<attributes> <attributes>
<attribute name="owner.project.facets" value="java"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry combineaccessrules="false" kind="src" path="/vipra-util"/> <classpathentry combineaccessrules="false" kind="src" path="/vipra-util"/>
......
...@@ -41,4 +41,11 @@ ...@@ -41,4 +41,11 @@
<nature>org.eclipse.wst.common.project.facet.core.nature</nature> <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.jsdt.core.jsNature</nature> <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
</natures> </natures>
<linkedResources>
<link>
<name>src/main/resources/config.properties</name>
<type>1</type>
<locationURI>PARENT-1-PROJECT_LOC/vipra-config/config.properties</locationURI>
</link>
</linkedResources>
</projectDescription> </projectDescription>
...@@ -4,10 +4,7 @@ ...@@ -4,10 +4,7 @@
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/> <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
<dependent-module archiveName="vipra-util.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/vipra-util/vipra-util">
<dependency-type>uses</dependency-type>
</dependent-module>
<property name="java-output-path" value="/vipra-rest/target/classes"/> <property name="java-output-path" value="/vipra-rest/target/classes"/>
<property name="context-root" value="vipra-rest"/> <property name="context-root" value="rest"/>
</wb-module> </wb-module>
</project-modules> </project-modules>
...@@ -13,9 +13,9 @@ import com.fasterxml.jackson.databind.ObjectMapper; ...@@ -13,9 +13,9 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.databind.module.SimpleModule;
import de.vipra.rest.model.Article;
import de.vipra.rest.serializer.ArticleDeserializer; import de.vipra.rest.serializer.ArticleDeserializer;
import de.vipra.rest.serializer.ArticleSerializer; import de.vipra.rest.serializer.ArticleSerializer;
import de.vipra.rest.model.Article;
@Provider @Provider
public class ObjectMapperProvider implements ContextResolver<ObjectMapper> { public class ObjectMapperProvider implements ContextResolver<ObjectMapper> {
......
package de.vipra.rest.provider; package de.vipra.rest.provider;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.fge.jsonpatch.JsonPatch;
import com.github.fge.jsonpatch.JsonPatchException;
import de.vipra.rest.PATCH;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.IOException; import java.io.IOException;
import java.lang.annotation.Annotation; import java.lang.annotation.Annotation;
import java.lang.reflect.Method; import java.lang.reflect.Method;
...@@ -29,6 +20,13 @@ import javax.ws.rs.ext.ReaderInterceptorContext; ...@@ -29,6 +20,13 @@ import javax.ws.rs.ext.ReaderInterceptorContext;
import org.glassfish.jersey.message.MessageBodyWorkers; import org.glassfish.jersey.message.MessageBodyWorkers;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.fge.jsonpatch.JsonPatch;
import com.github.fge.jsonpatch.JsonPatchException;
import de.vipra.rest.PATCH;
@Provider @Provider
@PATCH @PATCH
public class PatchReaderInterceptor implements ReaderInterceptor { public class PatchReaderInterceptor implements ReaderInterceptor {
......
package de.vipra.rest.serializer; package de.vipra.rest.serializer;
import static de.vipra.rest.serializer.JsonHelper.getString;
import static de.vipra.rest.serializer.JsonHelper.stringToDate;
import java.io.IOException; import java.io.IOException;
import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonParser;
...@@ -10,8 +13,6 @@ import com.fasterxml.jackson.databind.JsonNode; ...@@ -10,8 +13,6 @@ import com.fasterxml.jackson.databind.JsonNode;
import de.vipra.rest.model.Article; import de.vipra.rest.model.Article;
import static de.vipra.rest.serializer.JsonHelper.*;
public class ArticleDeserializer extends JsonDeserializer<Article> { public class ArticleDeserializer extends JsonDeserializer<Article> {
@Override @Override
......
package de.vipra.rest.serializer; package de.vipra.rest.serializer;
import de.vipra.rest.model.Article; import static de.vipra.rest.serializer.JsonHelper.dateToString;
import java.io.IOException; import java.io.IOException;
...@@ -9,7 +9,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; ...@@ -9,7 +9,7 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider; import com.fasterxml.jackson.databind.SerializerProvider;
import static de.vipra.rest.serializer.JsonHelper.*; import de.vipra.rest.model.Article;
public class ArticleSerializer extends JsonSerializer<Article> { public class ArticleSerializer extends JsonSerializer<Article> {
......
...@@ -4,13 +4,14 @@ import java.net.URI; ...@@ -4,13 +4,14 @@ import java.net.URI;
import java.util.ArrayList; import java.util.ArrayList;
import de.vipra.rest.model.Article; import de.vipra.rest.model.Article;
import de.vipra.util.Constants;
import de.vipra.util.Mongo; import de.vipra.util.Mongo;
import de.vipra.util.service.ModelService; import de.vipra.util.service.DatabaseService;
public class ArticleService extends ModelService<Article> { public class ArticleService extends DatabaseService<Article> {
public ArticleService(Mongo mongo) { public ArticleService(Mongo mongo) {
super(mongo, "articles", Article.class); super(mongo, Constants.Collection.ARTICLES, Article.class);
} }
public Article getArticle(URI base, String id) { public Article getArticle(URI base, String id) {
......
db.host=localhost
db.port=27017
db.name=test
\ No newline at end of file
package de.vipra.rest.resource; package de.vipra.rest.resource;
import static org.junit.Assert.*; import static org.junit.Assert.assertEquals;
import javax.ws.rs.core.Application; import javax.ws.rs.core.Application;
import javax.ws.rs.core.Response; import javax.ws.rs.core.Response;
...@@ -9,8 +9,6 @@ import org.glassfish.jersey.server.ResourceConfig; ...@@ -9,8 +9,6 @@ import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.test.JerseyTest; import org.glassfish.jersey.test.JerseyTest;
import org.junit.Test; import org.junit.Test;
import de.vipra.rest.resource.ArticleResource;
public class ArticleResourceTest extends JerseyTest { public class ArticleResourceTest extends JerseyTest {
@Override @Override
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment