Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c8a80a7
Finished Testing ElasticSearch
Mar 31, 2017
acb9a99
Fixed merge conflicts
Mar 31, 2017
c1b319f
Fixed incorrect overriding of superclass methods
Mar 31, 2017
720ffdf
Changed tests to make sure that we pass in a Tag into TagFactory clas…
Mar 31, 2017
ac25c16
Removed delete request
Mar 31, 2017
47257da
New data
Mar 31, 2017
a87ea7f
removed unnecessary data files
Mar 31, 2017
03b2f8e
Unnecessary pom.xml file
Mar 31, 2017
553d079
moved pom.xml to correct location
Mar 31, 2017
ef72d5d
Revert "removed unnecessary data files"
Mar 31, 2017
2e709e5
Revert "New data"
Mar 31, 2017
3bc5466
removed unnecessary data files
Mar 31, 2017
73c86d9
added ElasticSearch dependencies
Mar 31, 2017
f22645c
added line to insert into ElasticSearch
Mar 31, 2017
8ffb0fe
changed parameter back to string -- more intuitive interface for TagR…
Mar 31, 2017
357b429
modified method signature for inserting into DB to throw GroundExcept…
Mar 31, 2017
450bcf0
Cleaned up file, removed main method that was used for testing purposes
Mar 31, 2017
77511ce
Created TagsResource API
Mar 31, 2017
aa50b59
added method to FactoryGenerator interface to add TagsResource
Mar 31, 2017
0e1b747
added tags resource
Mar 31, 2017
1dac8ec
Fixed connection to elasticsearch
Apr 2, 2017
e788608
Commiting changes so I can pull from upstream:
Apr 8, 2017
1253014
Resolved merge conflicts and added teardown methods to Neo4jTest.java…
Apr 8, 2017
b150228
Fixed Mapper Parsing Errors
Apr 10, 2017
a639cc0
committing for the purpose of pulling from upstream
Apr 18, 2017
a6b25a1
Fixed merge conflicts
Apr 18, 2017
cb6dcc0
fixed minor bugs
Apr 18, 2017
2f33f01
added ElasticSearch version in correct format
Apr 18, 2017
2e79918
Fixed issue with *name
Apr 18, 2017
bc7dc23
added elasticsearch version property
Apr 18, 2017
a881dc1
Modified so that refresh indices occurs only on reads, not writes
Apr 18, 2017
648c970
Fixed whitespace issues and handles exceptions more robustly
Apr 18, 2017
fd1c51f
added exception class for ElasticSearch
Apr 18, 2017
39656a3
Committing for the purpose of pulling from upstream
Apr 24, 2017
4d7473c
commiting to pull from upstream
May 2, 2017
7b10afb
reformatted code to deal with elasticSearch option
May 2, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions app/controllers/EdgeController.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,6 @@
import dao.models.EdgeVersionFactory;
import db.DbClient;
import exceptions.GroundException;
import exceptions.GroundItemNotFoundException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.inject.Inject;
import models.models.Edge;
import models.models.EdgeVersion;
import models.models.Tag;
Expand All @@ -19,6 +14,10 @@
import util.ControllerUtils;
import util.FactoryGenerator;

import javax.inject.Inject;
import java.util.List;
import java.util.Map;

public class EdgeController extends Controller {
private final EdgeFactory edgeFactory;
private final EdgeVersionFactory edgeVersionFactory;
Expand Down
9 changes: 5 additions & 4 deletions app/controllers/GraphController.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@
import db.DbClient;
import exceptions.GroundException;
import exceptions.GroundItemNotFoundException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.inject.Inject;
import models.models.Graph;
import models.models.GraphVersion;
import models.models.Tag;
Expand All @@ -19,6 +15,11 @@
import util.ControllerUtils;
import util.FactoryGenerator;

import javax.inject.Inject;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class GraphController extends Controller {
private final GraphFactory graphFactory;
private final GraphVersionFactory graphVersionFactory;
Expand Down
12 changes: 6 additions & 6 deletions app/controllers/NodeController.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,20 @@
import db.DbClient;
import exceptions.GroundException;
import exceptions.GroundItemNotFoundException;
import java.util.List;
import java.util.Map;
import javax.inject.Inject;
import models.models.Node;
import models.models.NodeVersion;
import models.models.Tag;
import play.libs.Json;
import play.mvc.Controller;
import play.mvc.Result;

import java.util.HashMap;
import util.ControllerUtils;
import util.FactoryGenerator;

import javax.inject.Inject;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class NodeController extends Controller {
private final NodeFactory nodeFactory;
private final NodeVersionFactory nodeVersionFactory;
Expand Down Expand Up @@ -106,4 +106,4 @@ public Result createNodeVersion(String sourceKey) throws GroundException {
throw e;
}
}
}
}
3 changes: 2 additions & 1 deletion app/dao/models/cassandra/CassandraRichVersionFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import models.models.StructureVersion;
import models.models.Tag;
import models.versions.GroundType;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.HashMap;
Expand Down Expand Up @@ -93,7 +94,7 @@ public void insertIntoDatabase(long id,

for (String key : tags.keySet()) {
Tag tag = tags.get(key);

ElasticSearch.insertElasticSearch(tag, "rich_version");
List<DbDataContainer> tagInsertion = new ArrayList<>();
tagInsertion.add(new DbDataContainer("rich_version_id", GroundType.LONG, id));
tagInsertion.add(new DbDataContainer("key", GroundType.STRING, key));
Expand Down
23 changes: 17 additions & 6 deletions app/dao/models/cassandra/CassandraTagFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* limitations under the License.
*/


package dao.models.cassandra;

import dao.models.TagFactory;
Expand All @@ -22,17 +23,19 @@
import exceptions.GroundException;
import models.models.Tag;
import models.versions.GroundType;

import util.ElasticSearch;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CassandraTagFactory implements TagFactory {
private final CassandraClient dbClient;
private final boolean elasticSearchOn;

public CassandraTagFactory(CassandraClient dbClient) {
public CassandraTagFactory(CassandraClient dbClient, boolean elasticSearchOn) {
this.dbClient = dbClient;
this.elasticSearchOn = elasticSearchOn;
}

@Override
Expand Down Expand Up @@ -75,16 +78,24 @@ private Map<String, Tag> retrieveFromDatabaseById(long id, String keyPrefix)
return result;
}

@Override
public List<Long> getVersionIdsByTag(String tag) throws GroundException {
return this.getIdsByTag(tag, "rich_version");
if (elasticSearchOn) {
return ElasticSearch.getSearchResponse("rich_version", tag);
} else {
return this.getIdsByTag(tag, "rich_version");
}
}

@Override
public List<Long> getItemIdsByTag(String tag) throws GroundException {
return this.getIdsByTag(tag, "item");
if (elasticSearchOn) {
return ElasticSearch.getSearchResponse("item", tag);
} else {
return this.getIdsByTag(tag, "item");
}
}



private List<Long> getIdsByTag(String tag, String keyPrefix) throws GroundException {
List<Long> result = new ArrayList<>();

Expand Down
12 changes: 6 additions & 6 deletions app/dao/models/neo4j/Neo4jRichVersionFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,29 +12,29 @@
* limitations under the License.
*/


package dao.models.neo4j;

import dao.models.RichVersionFactory;
import dao.versions.neo4j.Neo4jVersionFactory;
import db.DbDataContainer;
import db.Neo4jClient;
import exceptions.GroundDbException;
import exceptions.GroundException;
import exceptions.GroundVersionNotFoundException;
import models.models.RichVersion;
import models.models.StructureVersion;
import models.models.Tag;
import models.versions.GroundType;
import org.neo4j.driver.internal.value.NullValue;
import org.neo4j.driver.internal.value.StringValue;
import org.neo4j.driver.v1.Record;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.neo4j.driver.internal.value.NullValue;
import org.neo4j.driver.internal.value.StringValue;
import org.neo4j.driver.v1.Record;

public abstract class Neo4jRichVersionFactory<T extends RichVersion>
extends Neo4jVersionFactory<T>
implements RichVersionFactory<T> {
Expand Down Expand Up @@ -104,7 +104,7 @@ public void insertIntoDatabase(long id,

for (String key : tags.keySet()) {
Tag tag = tags.get(key);

ElasticSearch.insertElasticSearch(tag, "rich_version");
List<DbDataContainer> tagInsertion = new ArrayList<>();
tagInsertion.add(new DbDataContainer("rich_version_id", GroundType.LONG, id));
tagInsertion.add(new DbDataContainer("tkey", GroundType.STRING, key));
Expand Down
30 changes: 19 additions & 11 deletions app/dao/models/neo4j/Neo4jTagFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,23 @@
import exceptions.GroundException;
import models.models.Tag;
import models.versions.GroundType;
import org.neo4j.driver.internal.value.NullValue;
import org.neo4j.driver.internal.value.StringValue;
import org.neo4j.driver.v1.Record;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.neo4j.driver.internal.value.NullValue;
import org.neo4j.driver.internal.value.StringValue;
import org.neo4j.driver.v1.Record;

public class Neo4jTagFactory implements TagFactory {
private final Neo4jClient dbClient;
private final boolean elasticSearchOn;

public Neo4jTagFactory(Neo4jClient dbClient) {
public Neo4jTagFactory(Neo4jClient dbClient, boolean elasticSearchOn) {
this.dbClient = dbClient;
this.elasticSearchOn = elasticSearchOn;
}

@Override
Expand Down Expand Up @@ -86,14 +88,20 @@ private Map<String, Tag> retrieveFromDatabaseById(long id, String keyPrefix)
return tags;
}

@Override
public List<Long> getVersionIdsByTag(String tag) throws GroundDbException {
return this.getIdsByTag(tag, "rich_version_id");
public List<Long> getVersionIdsByTag(String tag) throws GroundException {
if (this.elasticSearchOn) {
return ElasticSearch.getSearchResponse("rich_version", tag);
} else {
return this.getIdsByTag(tag, "rich_version");
}
}

@Override
public List<Long> getItemIdsByTag(String tag) throws GroundDbException {
return this.getIdsByTag(tag, "item_id");
public List<Long> getItemIdsByTag(String tag) throws GroundException {
if (this.elasticSearchOn) {
return ElasticSearch.getSearchResponse("item", tag);
} else {
return this.getIdsByTag(tag, "item");
}
}

private List<Long> getIdsByTag(String tag, String idAttribute) throws GroundDbException {
Expand Down
5 changes: 4 additions & 1 deletion app/dao/models/postgres/PostgresRichVersionFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
* limitations under the License.
*/



package dao.models.postgres;

import dao.models.RichVersionFactory;
Expand All @@ -26,6 +28,7 @@
import models.models.StructureVersion;
import models.models.Tag;
import models.versions.GroundType;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.HashMap;
Expand Down Expand Up @@ -92,7 +95,7 @@ public void insertIntoDatabase(long id,

for (String key : tags.keySet()) {
Tag tag = tags.get(key);

ElasticSearch.insertElasticSearch(tag, "rich_version");
List<DbDataContainer> tagInsertion = new ArrayList<>();
tagInsertion.add(new DbDataContainer("rich_version_id", GroundType.LONG, id));
tagInsertion.add(new DbDataContainer("key", GroundType.STRING, key));
Expand Down
18 changes: 15 additions & 3 deletions app/dao/models/postgres/PostgresTagFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
* limitations under the License.
*/


package dao.models.postgres;

import dao.models.TagFactory;
Expand All @@ -22,6 +23,7 @@
import exceptions.GroundException;
import models.models.Tag;
import models.versions.GroundType;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.HashMap;
Expand All @@ -30,9 +32,11 @@

public class PostgresTagFactory implements TagFactory {
private final PostgresClient dbClient;
private final boolean elasticSearchOn;

public PostgresTagFactory(PostgresClient dbClient) {
public PostgresTagFactory(PostgresClient dbClient, boolean elasticSearchOn) {
this.dbClient = dbClient;
this.elasticSearchOn = elasticSearchOn;
}

@Override
Expand Down Expand Up @@ -76,13 +80,21 @@ private Map<String, Tag> retrieveFromDatabaseById(long id, String keyPrefix)

@Override
public List<Long> getVersionIdsByTag(String tag) throws GroundException {
return this.getIdsByTag(tag, "rich_version");
if (this.elasticSearchOn) {
return ElasticSearch.getSearchResponse("rich_version", tag);
} else {
return this.getIdsByTag(tag, "rich_version");
}
}


@Override
public List<Long> getItemIdsByTag(String tag) throws GroundException {
return this.getIdsByTag(tag, "item");
if (this.elasticSearchOn) {
return ElasticSearch.getSearchResponse("item", tag);
} else {
return this.getIdsByTag(tag, "item");
}
}

private List<Long> getIdsByTag(String tag, String keyPrefix) throws GroundException {
Expand Down
8 changes: 4 additions & 4 deletions app/dao/versions/cassandra/CassandraItemFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,14 @@
import models.versions.GroundType;
import models.versions.Item;
import models.versions.VersionHistoryDag;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public abstract class CassandraItemFactory<T extends Item> implements ItemFactory<T> {
private static final Logger LOGGER = LoggerFactory.getLogger(CassandraItemFactory.class);

Expand Down Expand Up @@ -70,7 +70,7 @@ public void insertIntoDatabase(long id, Map<String, Tag> tags) throws GroundExce

for (String key : tags.keySet()) {
Tag tag = tags.get(key);

ElasticSearch.insertElasticSearch(tag, "item");
List<DbDataContainer> tagInsertion = new ArrayList<>();
tagInsertion.add(new DbDataContainer("item_id", GroundType.LONG, id));
tagInsertion.add(new DbDataContainer("key", GroundType.STRING, key));
Expand Down
1 change: 0 additions & 1 deletion app/dao/versions/cassandra/CassandraVersionFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ public CassandraVersionFactory(CassandraClient dbClient) {
public void insertIntoDatabase(long id) throws GroundException {
List<DbDataContainer> insertions = new ArrayList<>();
insertions.add(new DbDataContainer("id", GroundType.LONG, id));

this.dbClient.insert("version", insertions);
}

Expand Down
8 changes: 5 additions & 3 deletions app/dao/versions/neo4j/Neo4jItemFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@

package dao.versions.neo4j;

import org.neo4j.driver.v1.Record;

import dao.models.neo4j.Neo4jTagFactory;
import dao.versions.ItemFactory;
import db.DbDataContainer;
Expand All @@ -27,6 +25,8 @@
import models.versions.GroundType;
import models.versions.Item;
import models.versions.VersionHistoryDag;
import org.neo4j.driver.v1.Record;
import util.ElasticSearch;

import java.util.ArrayList;
import java.util.List;
Expand Down Expand Up @@ -59,9 +59,11 @@ public Neo4jItemFactory(Neo4jClient dbClient,
* @param tags the tags associated with the item
* @throws GroundDbException an error inserting data into the database
*/
public void insertIntoDatabase(long id, Map<String, Tag> tags) throws GroundDbException {

public void insertIntoDatabase(long id, Map<String, Tag> tags) throws GroundException {
for (String key : tags.keySet()) {
Tag tag = tags.get(key);
ElasticSearch.insertElasticSearch(tag, "item");

List<DbDataContainer> tagInsertion = new ArrayList<>();
tagInsertion.add(new DbDataContainer("item_id", GroundType.LONG, id));
Expand Down
Loading