Skip to content

Commit ab5b526

Browse files
authored
Add the ability to specify a default sort behaviour on a Table (#1922)
* WiP * Tests * Tests * Tests * Implement default sort * Added more constructors for table defs * Added more constructors for table defs * Added an integ test
1 parent 3f7c549 commit ab5b526

File tree

74 files changed

+585
-268
lines changed

Some content is hidden

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

74 files changed

+585
-268
lines changed

benchmark/src/main/java/org/finos/vuu/benchmark/sort/SortBenchmark.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import org.finos.vuu.net.SortDef;
88
import org.finos.vuu.net.SortSpec;
99

10-
import java.util.Arrays;
1110
import java.util.List;
1211

1312
import static org.finos.vuu.util.ScalaCollectionConverter.toScala;
@@ -23,9 +22,7 @@ public SortBenchmark(BenchmarkHelper benchmarkHelper, int size) {
2322
void sortLargeTable() {
2423
var sort = new GenericSort2(
2524
SortSpec.apply(toScala(List.of(SortDef.apply("exchange", 'A')))),
26-
toScala(Arrays.stream(inMemDataTable.getTableDef().columns())
27-
.filter(f -> f.name().equals("exchange"))
28-
.toList()));
25+
toScala(List.of(inMemDataTable.getTableDef().columnForName("exchange"))));
2926
var viewPortColumns = ViewPortColumnCreator.create(inMemDataTable, toScala(List.of("exchange")));
3027
sort.doSort(inMemDataTable, inMemDataTable.primaryKeys(), viewPortColumns);
3128
}

example/apache-ignite/src/main/scala/org/finos/vuu/example/ignite/module/IgniteOrderDataModule.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ object IgniteOrderDataModule extends DefaultModule {
2525
),
2626
(_, _) => new IgniteOrderDataProvider(igniteOrderStore),
2727
(table, _, _, _) => ViewPortDef(
28-
columns = table.getTableDef.columns,
28+
columns = table.getTableDef.getColumns,
2929
service = new NoOpIgniteService()
3030
)
3131
).asModule()

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ object BasketModule extends DefaultModule {
3636
),
3737
(table, _) => new BasketProvider(table),
3838
(table, _, _, tableContainer) => ViewPortDef(
39-
columns = table.getTableDef.columns,
39+
columns = table.getTableDef.getColumns,
4040
service = new BasketService(table, omsApi)(clock, tableContainer)
4141
)
4242
)
@@ -70,7 +70,7 @@ object BasketModule extends DefaultModule {
7070
),
7171
(table, vs) => new BasketTradingProvider(table, vs.tableContainer),
7272
(table, _, _, tableContainer) => ViewPortDef(
73-
columns = table.getTableDef.columns,
73+
columns = table.getTableDef.getColumns,
7474
service = new BasketTradingService(table, omsApi)(clock, tableContainer)
7575
)
7676
)
@@ -101,7 +101,7 @@ object BasketModule extends DefaultModule {
101101
),
102102
(table, vs) => new BasketTradingConstituentProvider(table, omsApi),
103103
(table, _, _, tableContainer) => ViewPortDef(
104-
columns = table.getTableDef.columns,
104+
columns = table.getTableDef.getColumns,
105105
service = new BasketTradingConstituentService(table)(clock, tableContainer)
106106
)
107107
)
@@ -143,7 +143,7 @@ object BasketModule extends DefaultModule {
143143
joinFields = Seq(),
144144
),
145145
(table, _, _, tableContainer) => ViewPortDef(
146-
columns = table.getTableDef.columns,
146+
columns = table.getTableDef.getColumns,
147147
service = new BasketTradingConstituentJoinService(table)(clock, tableContainer)
148148
)
149149
)

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ class BasketCreateTest extends VuuServerTestCase {
3535
vuuServer.login("testUser")
3636
val basketId = ".FTSE"
3737

38-
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.columns, null))
38+
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.getColumns, null))
3939

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

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class BasketMutateOffMarketTest extends VuuServerTestCase {
3030

3131
vuuServer.login("testUser")
3232

33-
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.columns, null))
33+
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.getColumns, null))
3434

3535
val pricesProvider = vuuServer.getProvider(PriceModule.NAME, "prices")
3636
val basketProvider = vuuServer.getProvider(BasketModule.NAME, BasketTable)

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class BasketSendToMarketTest extends VuuServerTestCase {
3333

3434
vuuServer.login("testUser")
3535

36-
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.columns, null))
36+
vuuServer.overrideViewPortDef("prices", (table, _, _, _) => ViewPortDef(table.getTableDef.getColumns, null))
3737

3838
val pricesProvider = vuuServer.getProvider(PriceModule.NAME, "prices")
3939
val basketProvider = vuuServer.getProvider(BasketModule.NAME, BasketTable)

example/basket/src/test/scala/org/finos/vuu/provider/BasketConstituentProviderTest.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
// )
3535
// val table = new InMemDataTable(tableDef, joinProvider)
3636
// val provider = new BasketConstituentProvider(table)
37-
// val columns: Array[Column] = provider.table.getTableDef.columns
37+
// val columns: Array[Column] = provider.table.getTableDef.getColumns
3838
// val headers: Array[String] = columns.map(_.name)
3939
//
4040
// before {

example/basket/src/test/scala/org/finos/vuu/provider/BasketProviderTest.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
// )
3333
// val table = new InMemDataTable(tableDef, joinProvider)
3434
// val provider = new BasketProvider(table)
35-
// val columns: Array[Column] = provider.table.getTableDef.columns
35+
// val columns: Array[Column] = provider.table.getTableDef.getColumns
3636
// val headers: Array[String] = columns.map(_.name)
3737
//
3838
// before {

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ object EditableModule extends DefaultModule {
2323
),
2424
(table, vs) => new ProcessProvider(table),
2525
(table, _, _, tableContainer) => ViewPortDef(
26-
columns = table.getTableDef.columns,
26+
columns = table.getTableDef.getColumns,
2727
service = new ProcessRpcService()(tableContainer)
2828
)
2929
).addSessionTable(
@@ -33,7 +33,7 @@ object EditableModule extends DefaultModule {
3333
columns = Columns.fromNames("process-id:String", "sequenceNumber:Int")
3434
),
3535
(table, _, _, tableContainer) => ViewPortDef(
36-
columns = table.getTableDef.columns,
36+
columns = table.getTableDef.getColumns,
3737
service = new FixSequenceRpcService()(clock, tableContainer)
3838
)
3939
).asModule()

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ object EditableTestModule {
152152
),
153153
(table, _) => new NullProvider(),
154154
(table, _, _, tableContainer) => ViewPortDef(
155-
columns = table.getTableDef.columns,
155+
columns = table.getTableDef.getColumns,
156156
service = new TestEditableService(table, tableContainer)
157157
)
158158
).asModule()
@@ -179,7 +179,7 @@ object EditTableTestModule {
179179
),
180180
(table, _) => new NullProvider(),
181181
(table, _, _, tableContainer) => ViewPortDef(
182-
columns = table.getTableDef.columns,
182+
columns = table.getTableDef.getColumns,
183183
service = new EditTableTestService()(using tableContainer)
184184
)
185185
).asModule()

0 commit comments

Comments
 (0)