Skip to content

Commit

Permalink
-
Browse files Browse the repository at this point in the history
  • Loading branch information
tristannottelman committed Jun 12, 2018
1 parent c83f86e commit 62aeb2f
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 204 deletions.
13 changes: 11 additions & 2 deletions src/transceptor/technology/Client.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
import java.nio.channels.CompletionHandler;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.stream.Collectors;
import java.util.stream.Stream;

/**
*
* @author tristan
*/
public class Client {
public class Client implements ConnectionInterface {

private final List<Connection> connectionList;
private final List<Connection> connectionPriorityList;
Expand Down Expand Up @@ -43,6 +43,7 @@ Connection randomConnection() {
.get(rand.nextInt(l.size()));
}

@Override
public void connect(CompletionHandler handler) {
for (String[] strings : hostlist) {
Connection connection = new Connection(username, password, dbname, strings[0], Integer.parseInt(strings[1]));
Expand All @@ -57,15 +58,23 @@ public void connect(CompletionHandler handler) {
}
}
}

@Override
public void insert(Map map, CompletionHandler handler) {
randomConnection().insert(map, handler);
}

@Override
public void query(String query, CompletionHandler handler) {
randomConnection().query(query, handler);
}

@Override
public void query(String query, int timePrecision, CompletionHandler handler) {
randomConnection().query(query, timePrecision, handler);
}

@Override
public void close() {
connectionList.forEach((connection) -> {
connection.close();
Expand Down
8 changes: 6 additions & 2 deletions src/transceptor/technology/Connection.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import java.nio.ByteBuffer;
import java.nio.channels.AsynchronousSocketChannel;
import java.nio.channels.CompletionHandler;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
Expand All @@ -18,7 +17,7 @@
*
* @author Tristan Nottelman
*/
public class Connection {
public class Connection implements ConnectionInterface {

private AsynchronousSocketChannel channel;
private String username;
Expand Down Expand Up @@ -177,6 +176,7 @@ public void failed(Throwable exc, Object attachment) {
*
* @param handler
*/
@Override
public void connect(CompletionHandler handler) {
try {
// connect to SiriDB
Expand All @@ -202,6 +202,7 @@ public void connect(CompletionHandler handler) {
/**
* Closes the connection
*/
@Override
public void close() {
try {
channel.close();
Expand All @@ -216,6 +217,7 @@ public void close() {
* @param map
* @param handler
*/
@Override
public void insert(Map map, CompletionHandler handler) {
channelWriter((byte) CPROTO_RES_INSERT, qpack.pack(map), handler);
}
Expand All @@ -226,6 +228,7 @@ public void insert(Map map, CompletionHandler handler) {
* @param query
* @param handler
*/
@Override
public void query(String query, CompletionHandler handler) {
channelWriter((byte) CPROTO_REQ_QUERY, qpack.pack(new String[]{query, null}), handler);
}
Expand All @@ -237,6 +240,7 @@ public void query(String query, CompletionHandler handler) {
* @param timePrecision
* @param handler
*/
@Override
public void query(String query, int timePrecision, CompletionHandler handler) {
channelWriter((byte) CPROTO_REQ_QUERY, qpack.pack(new String[]{query, timePrecision + ""}), handler);
}
Expand Down
16 changes: 16 additions & 0 deletions src/transceptor/technology/ConnectionInterface.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package transceptor.technology;

import java.nio.channels.CompletionHandler;
import java.util.Map;

/**
*
* @author tristan
*/
public interface ConnectionInterface {
public void close();
public void connect(CompletionHandler handler);
public void insert(Map map, CompletionHandler handler);
public void query(String query, CompletionHandler handler);
public void query(String query, int timePrecision, CompletionHandler handler);
}
200 changes: 0 additions & 200 deletions src/transceptor/technology/Test.java

This file was deleted.

0 comments on commit 62aeb2f

Please sign in to comment.