Skip to content

Commit 94bbbcb

Browse files
authored
#2231 move common code to vuu (#2347)
* #2231 move builders to corresponding packages * #2231 add ColumnNames * #2231 add VUU_MESSAGE to default column * #2231 add table action * #2231 add default implementation to EditSessionRpcHandler * #2231 add default implementation to EditSessionRpcHandler * #2231 format * #2231 move java rpc handler examples to a package * #2231 make java example extend EditSessionRpcHandler * #2231 format * #2231 add default implementation for EndEditSessionRpcHandler * #2231 add default implementation for EndEditSessionRpcHandler * #2231 fix java example * #2231 add ViewPortDefHelper * #2231 fix java test * #2231 add rpcNotSupportedMsg * #2231 add rpcNotSupportedMsg * #2231 update java example * #2231 add default implementation to ImportSesssionRpcHandler * #2231 add default implementation to ImportSesssionRpcHandler * #2231 add default implementation to ImportSesssionRpcHandler * #2231 update end session handler * #2231 rename * #2231 log msg * #2231 move to rpc.sessiontable * #2231 test class * #2231 move createViewPortAndVerifyDataSize to WebSocketApiTestBase * #2231 move ViewPortDefHelper to scala * #2231 move ViewPortDefHelper to scala * #2231 move ViewPortDefHelper to scala * #2231 move common test code to TestProviderFactory * #2231 add tests for default implementation of import rpc * #2231 check max size * #2231 add test * #2231 add TestTable * #2231 test threshold * #2231 add java import example * #2231 fix java example * #2231 fix java example * #2231 fix java example * #2231 add permission check * #2231 test * #2231 remove permission check and tidy up traits * #2231 add java example * #2231 tests * #2231 tests * #2231 tests * #2231 move column names * #2231 fix test * #2231 todo * #2231 format * #2231 tidy up CreateSessionTableRpcHandler * #2231 tidy up CreateSessionTableRpcHandler * #2231 fix import * #2231 update create session result * #2231 update create session result * #2231 update
1 parent d1d7571 commit 94bbbcb

61 files changed

Lines changed: 1062 additions & 421 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

benchmark/src/main/java/org/finos/vuu/benchmark/TableDefs.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
import org.finos.vuu.api.TableDef;
66
import org.finos.vuu.core.table.Column;
77
import org.finos.vuu.core.table.Columns;
8-
import org.finos.vuu.util.JoinTableDefBuilder;
9-
import org.finos.vuu.util.JoinToBuilder;
10-
import org.finos.vuu.util.TableDefBuilder;
8+
import org.finos.vuu.api.JoinTableDefBuilder;
9+
import org.finos.vuu.api.JoinToBuilder;
10+
import org.finos.vuu.api.TableDefBuilder;
1111

1212
import java.util.List;
1313
import java.util.stream.Stream;

example/basket/src/main/scala/org/finos/vuu/core/module/basket/service/BasketTradingConstituentJoinService.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ import org.finos.vuu.core.module.basket.BasketModule
77
import org.finos.vuu.core.module.basket.BasketModule.{BasketConstituentColumnNames as BCColumnName, BasketTradingColumnNames as BTColumnName, BasketTradingConstituentColumnNames as ColumnName}
88
import org.finos.vuu.core.module.basket.result.ErrorReason
99
import org.finos.vuu.core.table.*
10-
import org.finos.vuu.net.rpc.{DefaultRpcHandler, EditTableRpcHandler, RpcFunctionFailure, RpcFunctionResult, RpcFunctionSuccess, RpcParams}
10+
import org.finos.vuu.net.rpc.{DefaultRpcHandler, RpcFunctionFailure, RpcFunctionResult, RpcFunctionSuccess, RpcParams}
1111
import org.finos.vuu.net.ClientSessionId
12+
import org.finos.vuu.net.rpc.sessiontable.EditTableRpcHandler
1213
import org.finos.vuu.viewport.*
1314

1415
import scala.util.control.NonFatal

example/basket/src/main/scala/org/finos/vuu/core/module/basket/service/BasketTradingConstituentService.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import org.finos.vuu.core.module.basket.BasketModule.BasketTradingConstituentCol
55
import org.finos.vuu.core.table.RowWithData
66
import org.finos.vuu.net.ClientSessionId
77
import org.finos.vuu.net.rpc.*
8+
import org.finos.vuu.net.rpc.sessiontable.EditTableRpcHandler
89
import org.finos.vuu.viewport.*
910

1011
class BasketTradingConstituentService extends EditTableRpcHandler with DefaultRpcHandler with StrictLogging {

example/basket/src/main/scala/org/finos/vuu/core/module/basket/service/BasketTradingService.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ import org.finos.vuu.core.module.basket.BasketConstants.Side
55
import org.finos.vuu.core.module.basket.BasketModule
66
import org.finos.vuu.core.module.basket.BasketModule.BasketTradingConstituentTable
77
import org.finos.vuu.core.table.*
8-
import org.finos.vuu.net.rpc.{DefaultRpcHandler, EditTableRpcHandler, RpcFunctionResult, RpcFunctionSuccess, RpcParams}
8+
import org.finos.vuu.net.rpc.sessiontable.EditTableRpcHandler
9+
import org.finos.vuu.net.rpc.{DefaultRpcHandler, RpcFunctionResult, RpcFunctionSuccess, RpcParams}
910
import org.finos.vuu.order.oms.{CancelOrder, NewOrder, OmsApi}
1011

1112
trait BasketTradingServiceIF {

example/basket/src/test/scala/org/finos/vuu/core/module/basket/BasketCreateTest.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package org.finos.vuu.core.module.basket
33
import org.finos.toolbox.jmx.{MetricsProvider, MetricsProviderImpl}
44
import org.finos.toolbox.lifecycle.LifecycleContainer
55
import org.finos.toolbox.time.{Clock, TestFriendlyClock}
6-
import org.finos.vuu.api.ViewPortDef
6+
import org.finos.vuu.api.{ViewPortDef}
77
import org.finos.vuu.core.module.TableDefContainer
88
import org.finos.vuu.core.module.basket.BasketModule.{BasketColumnNames as B, BasketConstituentColumnNames as BC}
99
import org.finos.vuu.core.module.price.PriceModule
@@ -34,7 +34,7 @@ class BasketCreateTest extends VuuServerTestCase {
3434
vuuServer.login("testUser")
3535
val basketId = ".FTSE"
3636

37-
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.getColumns, null))
37+
vuuServer.overrideViewPortDef("prices", ViewPortDef.defaultViewPortDefFunc)
3838

3939
val pricesProvider = vuuServer.getProvider(PriceModule.NAME, PriceModule.PriceTable)
4040
val basketProvider = vuuServer.getProvider(BasketModule.NAME, BasketModule.BasketTable)

example/editable/src/main/scala/org/finos/vuu/core/module/editable/FixSequenceRpcService.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.finos.vuu.core.module.editable
22

33
import org.finos.vuu.core.table.RowWithData
44
import org.finos.vuu.net.rpc.*
5+
import org.finos.vuu.net.rpc.sessiontable.EditTableRpcHandler
56

67
class FixSequenceRpcService extends EditTableRpcHandler with DefaultRpcHandler {
78

example/editable/src/test/scala/org/finos/vuu/core/module/editable/EditableTestModule.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ import org.finos.vuu.core.module.ModuleFactory.stringToString
88
import org.finos.vuu.core.module.{ModuleFactory, TableDefContainer, ViewServerModule}
99
import org.finos.vuu.core.table.{Columns, RowWithData}
1010
import org.finos.vuu.net.ClientSessionId
11-
import org.finos.vuu.net.rpc.{EditTableRpcHandler, RpcFunctionResult, RpcFunctionSuccess, RpcParams}
11+
import org.finos.vuu.net.rpc.sessiontable.EditTableRpcHandler
12+
import org.finos.vuu.net.rpc.{RpcFunctionResult, RpcFunctionSuccess, RpcParams}
1213
import org.finos.vuu.viewport.ViewPort
1314

1415
class EditTableTestService(val originalData: Map[String, Any]) extends EditTableRpcHandler with StrictLogging {

example/main-java/src/main/java/org/finos/vuu/module/JavaExampleModule.java

Lines changed: 50 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -12,20 +12,22 @@
1212
import org.finos.vuu.core.table.DefaultColumn;
1313
import org.finos.vuu.core.table.TableContainer;
1414
import org.finos.vuu.net.rpc.AllowAllRpcPermissionChecker$;
15+
import org.finos.vuu.net.rpc.DefaultRpcHandlerImpl;
1516
import org.finos.vuu.net.rpc.RpcHandler;
16-
import org.finos.vuu.person.DeleteRecordRpcHandler;
17-
import org.finos.vuu.person.DeleteRecordRpcHandlerIF;
18-
import org.finos.vuu.person.EditPersonRecordRpcHandler;
19-
import org.finos.vuu.person.PersonRpcHandler;
20-
import org.finos.vuu.person.UpdateRecordRpcHandler;
17+
import org.finos.vuu.person.rpc.DeleteRecordRpcHandler;
18+
import org.finos.vuu.person.rpc.DeleteRecordRpcHandlerIF;
19+
import org.finos.vuu.person.rpc.EditPersonRecordRpcHandler;
20+
import org.finos.vuu.person.rpc.EditRecordRpcHandler;
21+
import org.finos.vuu.person.rpc.ImportRecordRpcHandler;
22+
import org.finos.vuu.person.rpc.PersonRpcHandler;
2123
import org.finos.vuu.person.auto.AutoMappedPersonProvider;
2224
import org.finos.vuu.person.auto.EntitySchema;
2325
import org.finos.vuu.person.datasource.PersonStore;
2426
import org.finos.vuu.person.manual.PersonProvider;
25-
import org.finos.vuu.util.RpcHandlerBuilder;
26-
import org.finos.vuu.util.SessionTableDefBuilder;
27-
import org.finos.vuu.util.SortSpecBuilder;
28-
import org.finos.vuu.util.TableDefBuilder;
27+
import org.finos.vuu.net.rpc.RpcHandlerBuilder;
28+
import org.finos.vuu.api.SessionTableDefBuilder;
29+
import org.finos.vuu.net.SortSpecBuilder;
30+
import org.finos.vuu.api.TableDefBuilder;
2931

3032
public class JavaExampleModule extends DefaultModule {
3133

@@ -49,7 +51,7 @@ public ViewServerModule create(final TableDefContainer tableDefContainer, Clock
4951
(table, vs) -> new PersonProvider(table, new PersonStore()),
5052
(table, provider, providerContainer, tableContainer) -> new ViewPortDef(
5153
table.getTableDef().getColumns(),
52-
buildRpcHandler2(table, tableContainer)
54+
buildRpcHandler2(table)
5355
)
5456
)
5557
.addTable(new TableDefBuilder()
@@ -70,6 +72,30 @@ public ViewServerModule create(final TableDefContainer tableDefContainer, Clock
7072
buildRpcHandler3(tableContainer)
7173
)
7274
)
75+
.addTable(new TableDefBuilder()
76+
.name("edit-PersonManualMapped")
77+
.keyField("id")
78+
.customColumns(new ColumnBuilder().addString("id").addString("name")
79+
.addInt("account").build())
80+
.build(),
81+
(table, vs) -> new PersonProvider(table, new PersonStore()),
82+
(table, p, pc, tableContainer) -> new ViewPortDef(
83+
table.getTableDef().getColumns(),
84+
buildEditRpcHandler(tableContainer)
85+
)
86+
)
87+
.addTable(new TableDefBuilder()
88+
.name("import-PersonManualMapped")
89+
.keyField("id")
90+
.customColumns(new ColumnBuilder().addString("id").addString("name")
91+
.addInt("account").build())
92+
.build(),
93+
(table, vs) -> new PersonProvider(table, new PersonStore()),
94+
(table, p, pc, tableContainer) -> new ViewPortDef(
95+
table.getTableDef().getColumns(),
96+
buildImportRpcHandler(tableContainer)
97+
)
98+
)
7399
.addSessionTable(new SessionTableDefBuilder()
74100
.name("export-PersonManualMapped2")
75101
.keyField("Id")
@@ -106,17 +132,25 @@ private RpcHandler buildRpcHandler(DataTable table) {
106132
}
107133

108134
// Example of a mixture of RPC handlers in scala and in java
109-
private RpcHandler buildRpcHandler2(DataTable table, TableContainer tableContainer) {
135+
private RpcHandler buildRpcHandler2(DataTable table) {
136+
RpcHandler defaultHandler = new DefaultRpcHandlerImpl();
110137
PersonRpcHandler personRpcHandler = new PersonRpcHandler(table);
111138
DeleteRecordRpcHandlerIF deleteRecordRpcHandler = new DeleteRecordRpcHandler();
112-
UpdateRecordRpcHandler updateRecordRpcHandler = new UpdateRecordRpcHandler(tableContainer);
113-
updateRecordRpcHandler.registerRpc("UpdateName", personRpcHandler::processUpdateNameRpcRequest);
114-
updateRecordRpcHandler.registerRpc("GetAccountId", personRpcHandler::processGetAccountIdRpcRequest);
115-
updateRecordRpcHandler.registerRpc("DeleteRecprd", deleteRecordRpcHandler::deleteRecord);
116-
return updateRecordRpcHandler;
139+
defaultHandler.registerRpc("UpdateName", personRpcHandler::processUpdateNameRpcRequest);
140+
defaultHandler.registerRpc("GetAccountId", personRpcHandler::processGetAccountIdRpcRequest);
141+
defaultHandler.registerRpc("DeleteRecprd", deleteRecordRpcHandler::deleteRecord);
142+
return defaultHandler;
117143
}
118144

119145
private RpcHandler buildRpcHandler3(TableContainer tableContainer) {
120146
return new EditPersonRecordRpcHandler(AllowAllRpcPermissionChecker$.MODULE$, tableContainer);
121147
}
148+
149+
private RpcHandler buildEditRpcHandler(TableContainer tableContainer) {
150+
return new EditRecordRpcHandler(tableContainer);
151+
}
152+
153+
private RpcHandler buildImportRpcHandler(TableContainer tableContainer) {
154+
return new ImportRecordRpcHandler(tableContainer);
155+
}
122156
}

example/main-java/src/main/java/org/finos/vuu/person/EditPersonRecordRpcHandler.java

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

example/main-java/src/main/java/org/finos/vuu/person/UpdateRecordRpcHandler.java

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

0 commit comments

Comments
 (0)