Skip to content

Commit 647b7fb

Browse files
romanpbmrok-povsic
authored andcommitted
Refactor class names: change indicator to generator
1 parent 8068fb6 commit 647b7fb

11 files changed

Lines changed: 112 additions & 90 deletions

File tree

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/addon/ExternalProcessInstance.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ public void run() {
128128
sendingEventToClientHandler, reqDataHandler, clientInitHandler,
129129
new RegisterIndicatorHandler(aliasToState, eventLoop), new AddPointIndicatorHandler(aliasToState, eventLoop), new FinishedInitializationHandler(aliasToInitializationTask),
130130
new ClientOffHandler(eventLoop), new AddUiFieldHandler(aliasToState, eventLoop),
131-
new SendOrderHandler(aliasToState, eventLoop), new UpdateOrderHandler(aliasToState, eventLoop), new SubscribeToIndicatorHandler(eventLoop, connector, service),
131+
new SendOrderHandler(aliasToState, eventLoop), new UpdateOrderHandler(aliasToState, eventLoop), new SubscribeToGeneratorHandler(eventLoop, connector, service),
132132
new SendUserMessageHandler(eventLoop, aliasToState));
133133
eventLoop.setHandlerManager(handlerManager);
134134
reader = new DefaultMessageReader(server, incomeConverterManager, eventLoop);
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.bookmap.api.rpc.server.data.income;
2+
3+
import com.bookmap.api.rpc.server.data.utils.AbstractEvent;
4+
import com.bookmap.api.rpc.server.data.utils.Type;
5+
6+
public class SubscribeToGeneratorEvent extends AbstractEvent {
7+
8+
public final String addonName;
9+
public final boolean doesRequireFiltering;
10+
public final String generatorName;
11+
12+
public SubscribeToGeneratorEvent(String addonName, String generatorName, boolean doesRequireFiltering) {
13+
super(Type.REGISTER_BROADCASTING_PROVIDER);
14+
this.generatorName = generatorName;
15+
this.addonName = addonName;
16+
this.doesRequireFiltering = doesRequireFiltering;
17+
}
18+
}

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/data/income/SubscribeToIndicatorEvent.java

Lines changed: 0 additions & 16 deletions
This file was deleted.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package com.bookmap.api.rpc.server.data.income.converters;
2+
3+
import com.bookmap.api.rpc.server.data.income.SubscribeToGeneratorEvent;
4+
import com.bookmap.api.rpc.server.data.utils.AbstractEvent;
5+
import com.bookmap.api.rpc.server.data.utils.EventConverter;
6+
7+
import javax.inject.Inject;
8+
import javax.inject.Singleton;
9+
10+
@Singleton
11+
public class SubscribeToGeneratorConverter implements EventConverter<String, AbstractEvent> {
12+
13+
@Inject
14+
SubscribeToGeneratorConverter(){}
15+
16+
@Override
17+
public SubscribeToGeneratorEvent convert(String entity) {
18+
String[] tokens = entity.split(FIELDS_DELIMITER);
19+
return new SubscribeToGeneratorEvent(tokens[1], tokens[2].equals("None") ? null : tokens[2], Boolean.parseBoolean(tokens[3]));
20+
}
21+
}

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/data/income/converters/SubscribeToIndicatorConverter.java

Lines changed: 0 additions & 23 deletions
This file was deleted.

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/data/income/converters/modules/SubscribeToIndicatorConverterModule.java renamed to serverside-rpc/src/main/java/com/bookmap/api/rpc/server/data/income/converters/modules/SubscribeToGeneratorConverterModule.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.bookmap.api.rpc.server.data.income.converters.modules;
22

3-
import com.bookmap.api.rpc.server.data.income.converters.SubscribeToIndicatorConverter;
3+
import com.bookmap.api.rpc.server.data.income.converters.SubscribeToGeneratorConverter;
44
import com.bookmap.api.rpc.server.data.utils.AbstractEvent;
55
import com.bookmap.api.rpc.server.data.utils.EventConverter;
66
import com.bookmap.api.rpc.server.data.utils.EventTypeMapKey;
@@ -10,10 +10,10 @@
1010
import dagger.multibindings.IntoMap;
1111

1212
@Module
13-
public abstract class SubscribeToIndicatorConverterModule {
13+
public abstract class SubscribeToGeneratorConverterModule {
1414

1515
@Binds
1616
@IntoMap
1717
@EventTypeMapKey(Type.REGISTER_BROADCASTING_PROVIDER)
18-
abstract EventConverter<String, ? extends AbstractEvent> converter(SubscribeToIndicatorConverter converter);
18+
abstract EventConverter<String, ? extends AbstractEvent> converter(SubscribeToGeneratorConverter converter);
1919
}

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/data/utils/modules/IncomeConverterManagerFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
ResizeOrderConverterModule.class,
2323
SendOrderConverterModule.class,
2424
SendUserMessageConverterModule.class,
25-
SubscribeToIndicatorConverterModule.class
25+
SubscribeToGeneratorConverterModule.class
2626
}
2727
)
2828
public interface IncomeConverterManagerFactory {

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/handlers/HandlerManager.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,16 @@ public class HandlerManager implements Handler<AbstractEvent> {
2020
private final AddUiFieldHandler addUiFieldHandler;
2121
private final SendOrderHandler sendOrderHandler;
2222
private final UpdateOrderHandler updateOrderHandler;
23-
private final SubscribeToIndicatorHandler subscribeToIndicatorHandler;
23+
private final SubscribeToGeneratorHandler subscribeToGeneratorHandler;
2424
private final SendUserMessageHandler sendUserMessageHandler;
2525

2626

2727
public HandlerManager(SendingEventToClientHandler sendingEventToClientHandler, ReqDataHandler reqDataHandler,
28-
ClientInitHandler clientInitHandler, RegisterIndicatorHandler registerIndicatorHandler,
29-
AddPointIndicatorHandler addPointIndicatorHandler,
30-
FinishedInitializationHandler finishedInitializationHandler,
31-
ClientOffHandler clientOffHandler, AddUiFieldHandler addUiFieldHandler,
32-
SendOrderHandler sendOrderHandler, UpdateOrderHandler updateOrderHandler, SubscribeToIndicatorHandler subscribeToIndicatorHandler, SendUserMessageHandler sendUserMessageHandler) {
28+
ClientInitHandler clientInitHandler, RegisterIndicatorHandler registerIndicatorHandler,
29+
AddPointIndicatorHandler addPointIndicatorHandler,
30+
FinishedInitializationHandler finishedInitializationHandler,
31+
ClientOffHandler clientOffHandler, AddUiFieldHandler addUiFieldHandler,
32+
SendOrderHandler sendOrderHandler, UpdateOrderHandler updateOrderHandler, SubscribeToGeneratorHandler subscribeToGeneratorHandler, SendUserMessageHandler sendUserMessageHandler) {
3333
this.sendingEventToClientHandler = sendingEventToClientHandler;
3434
this.reqDataHandler = reqDataHandler;
3535
this.clientInitHandler = clientInitHandler;
@@ -40,7 +40,7 @@ public HandlerManager(SendingEventToClientHandler sendingEventToClientHandler, R
4040
this.addUiFieldHandler = addUiFieldHandler;
4141
this.sendOrderHandler = sendOrderHandler;
4242
this.updateOrderHandler = updateOrderHandler;
43-
this.subscribeToIndicatorHandler = subscribeToIndicatorHandler;
43+
this.subscribeToGeneratorHandler = subscribeToGeneratorHandler;
4444
this.sendUserMessageHandler = sendUserMessageHandler;
4545
}
4646

@@ -58,7 +58,7 @@ public void handle(AbstractEvent event) {
5858
case CANCEL_ORDER, MOVE_ORDER, MOVE_ORDER_TO_MARKET, RESIZE_ORDER -> {
5959
this.updateOrderHandler.handle((UpdateOrderEvent) event);
6060
}
61-
case REGISTER_BROADCASTING_PROVIDER -> this.subscribeToIndicatorHandler.handle((SubscribeToIndicatorEvent) event);
61+
case REGISTER_BROADCASTING_PROVIDER -> this.subscribeToGeneratorHandler.handle((SubscribeToGeneratorEvent) event);
6262
case SEND_USER_MESSAGE -> this.sendUserMessageHandler.handle((SendUserMessageEvent) event);
6363
default -> this.sendingEventToClientHandler.handle(event);
6464
}
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
package com.bookmap.api.rpc.server.handlers;
2+
3+
import com.bookmap.api.rpc.server.EventLoop;
4+
import com.bookmap.api.rpc.server.addon.Connector;
5+
import com.bookmap.api.rpc.server.data.income.SubscribeToGeneratorEvent;
6+
import com.bookmap.api.rpc.server.log.RpcLogger;
7+
8+
import java.util.concurrent.*;
9+
10+
public class SubscribeToGeneratorHandler implements Handler<SubscribeToGeneratorEvent> {
11+
private final EventLoop eventLoop;
12+
private final Connector connector;
13+
private final ExecutorService service;
14+
15+
public SubscribeToGeneratorHandler(EventLoop eventLoop, Connector connector, ExecutorService service) {
16+
this.eventLoop = eventLoop;
17+
this.connector = connector;
18+
this.service = service;
19+
}
20+
21+
@Override
22+
public void handle(SubscribeToGeneratorEvent event) {
23+
if (event.generatorName == null) {
24+
RpcLogger.info("Generator name is null, connecting to provider " + event.addonName);
25+
Future<Boolean> isConnected = connector.connect(event.addonName);
26+
service.execute(() -> {
27+
try {
28+
if (isConnected.get()) {
29+
RpcLogger.info("Successfully connected to " + event.addonName);
30+
}
31+
} catch (InterruptedException | ExecutionException e) {
32+
throw new RuntimeException(String.format(
33+
"Exception during subscribing to live data for %s," +
34+
" indicator name: %s", event.generatorName, event.addonName), e);
35+
}
36+
System.out.println(connector.getBroadcasterConsumer().getGeneratorsInfo("com.bookmap.addons.marketpulse.app.MarketPulse"));
37+
});
38+
} else {
39+
if (connector.isConnectedToProvider(event.addonName)) {
40+
connector.subscribeToLiveData(event.generatorName, eventLoop, event.addonName, event.doesRequireFiltering);
41+
RpcLogger.info("Successfully connected to " + event.addonName + " " + event.generatorName);
42+
return;
43+
}
44+
Future<Boolean> isConnected = connector.connect(event.addonName);
45+
service.execute(() -> {
46+
try {
47+
if (isConnected.get()) {
48+
connector.subscribeToLiveData(event.generatorName, eventLoop, event.addonName, event.doesRequireFiltering);
49+
RpcLogger.info("Successfully connected to " + event.addonName + " " + event.generatorName);
50+
}
51+
} catch (InterruptedException | ExecutionException e) {
52+
throw new RuntimeException(String.format(
53+
"Exception during subscribing to live data for %s," +
54+
" indicator name: %s", event.generatorName, event.addonName), e);
55+
}
56+
});
57+
}
58+
}
59+
}

serverside-rpc/src/main/java/com/bookmap/api/rpc/server/handlers/SubscribeToIndicatorHandler.java

Lines changed: 0 additions & 37 deletions
This file was deleted.

0 commit comments

Comments
 (0)