Commit 112c5818 authored by Grzegorz Pietrusza's avatar Grzegorz Pietrusza

working two way mapping

parent 351e1e34
import api.ExampleResource;
import com.google.common.collect.Lists;
import com.mongodb.*;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
......@@ -15,8 +16,12 @@ import persistence.MongoRepositories;
import repositories.Repositories;
import stub.MongoConfiguration;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* Created by gpietrus on 16.02.16.
......@@ -32,49 +37,22 @@ public class CTFApplication extends Application<ApplicationConfiguration> {
public static void main(String[] args) throws Exception {
//todo: add mongo-java-driver as maven dep
/*
MongoSession session = MongoConfiguration.createSession();
session.start();
Repositories.initialise(new MongoRepositories(session));
Repositories.fruits().add(new Fruit("apple"));
session.stop();
*/
//new CTFApplication().run(args);
User user = new User(String.valueOf(UUID.randomUUID()), "mehow");
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase database = mongoClient.getDatabase("db");
// database.createCollection("users"); //todo:
MongoCollection<Document> usersCollection = database.getCollection("users");
usersCollection.drop(); //todo: remove
usersCollection.insertOne(new Document(user.toMap()));
// usersCollection.insertOne(new Document()
// .append("username", "gpietrus")
// .append("age", 1)
// );
BasicDBList documents = usersCollection.find().into(new BasicDBList());
/*
MongoIterable<String> strings = database.listCollectionNames();
MongoCollection<Document> collection = database.getCollection("test");
FindIterable<Document> documents = collection.find();
Document doc = new Document("name", "MongoDB")
.append("type", "database")
.append("count", 1)
.append("info", new Document("x", 203).append("y", 102));
ArrayList<Document> usersDocuments = DBUtils.toList(usersCollection.find());
collection.insertOne(doc);
*/
List<Object> users = usersDocuments.stream()
.map(User::new)
.collect(Collectors.toList());
}
}
import com.mongodb.client.FindIterable;
import org.bson.Document;
import java.util.ArrayList;
/**
* Created by gpietrus on 20.02.2016.
*/
public class DBUtils {
public static ArrayList<Document> toList(FindIterable<Document> documents) {
ArrayList<Document> into = documents.into(new ArrayList<Document>());
return into;
}
}
package objects;
import com.google.common.collect.ImmutableMap;
import org.bson.Document;
import java.util.HashMap;
import java.util.Map;
/**
* Created by gpietrus on 16.02.16.
*/
public class User {
// private UUID id; //todo: should be chosen by mongo?
// private UUID id; //todo: should be chosen by mongo?
private String username;
private String password;
// public User(UUID id, String username, String password) {
public User(Document document) {
//todo: check nulls
this.username = document.get("username").toString();
this.password = document.get("password").toString();
}
public User(String username, String password) {
// this.id = id;
this.username = username;
this.password = password;
}
public String getUsername()
{
public String getUsername() {
return username;
}
public void setUsername(String username)
{
public void setUsername(String username) {
this.username = username;
}
public String getPassword()
{
public String getPassword() {
return password;
}
public void setPassword(String password)
{
public void setPassword(String password) {
this.password = password;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment