Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremie Bresson2014-12-16 08:24:38 +0000
committerJeremie Bresson2014-12-16 09:07:53 +0000
commit24f0c7795c47059fdc2294e766c9a29a66d94aa7 (patch)
treed2b10ca9646da0ad751efd74f693a79d1f101434
parentb6eb0a88b3db0c3dbf69e4010650dd6eaf482e86 (diff)
downloadorg.eclipse.scout.rt-24f0c7795c47059fdc2294e766c9a29a66d94aa7.tar.gz
org.eclipse.scout.rt-24f0c7795c47059fdc2294e766c9a29a66d94aa7.tar.xz
org.eclipse.scout.rt-24f0c7795c47059fdc2294e766c9a29a66d94aa7.zip
Bug 444210 - Deprecate execLoadTableData() in table pages
https://bugs.eclipse.org/bugs/show_bug.cgi?id=444210 (cherry picked from commit 13a606a29a47752ca87dc8b9fb2cbb387e39e83d) Change-Id: I05f554a5140cbcbb40536ad9e8ff531091f64a55 Reviewed-on: https://git.eclipse.org/r/38318 Tested-by: Hudson CI Reviewed-by: Jeremie Bresson <jbr@bsiag.com>
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/basic/table/columns/ColumnAutoResizeTest.java4
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/BookmarkToInvisibleOutlineTest.java18
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuNestedPageWithTablesTest.java8
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuTest.java4
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable1Test.java4
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable3Test.java6
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable6Test.java6
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable7Test.java4
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndPageBeanTest.java20
-rw-r--r--org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest.java6
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/AbstractPageWithTableExtension.java6
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/IPageWithTableExtension.java5
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/PageWithTableChains.java6
-rw-r--r--org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/AbstractPageWithTable.java77
-rw-r--r--org.eclipse.scout.rt.extension.client.test/src/org/eclipse/scout/rt/extension/client/ui/desktop/outline/pages/fixture/modification/PageModificationTablePage.java4
-rw-r--r--org.eclipse.scout.rt.ui.swing.test/src/org/eclipse/scout/rt/ui/swing/basic/SwingScoutModelFinderUiTest.java6
16 files changed, 129 insertions, 55 deletions
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/basic/table/columns/ColumnAutoResizeTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/basic/table/columns/ColumnAutoResizeTest.java
index 1c24e46a8f..cc7c852e46 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/basic/table/columns/ColumnAutoResizeTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/basic/table/columns/ColumnAutoResizeTest.java
@@ -71,8 +71,8 @@ public class ColumnAutoResizeTest {
public static class PageWithTable extends AbstractPageWithTable<PageWithTable.TestTable> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{"a", "b"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{"a", "b"}});
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/BookmarkToInvisibleOutlineTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/BookmarkToInvisibleOutlineTest.java
index d0d082437e..eff53e4431 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/BookmarkToInvisibleOutlineTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/BookmarkToInvisibleOutlineTest.java
@@ -90,11 +90,11 @@ public class BookmarkToInvisibleOutlineTest {
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1L, "5 Tickets"},
new Object[]{2L, "12 Appointments"},
- new Object[]{3L, "3 E-Mails"},};
+ new Object[]{3L, "3 E-Mails"},});
}
public class Table extends AbstractTable {
@@ -129,11 +129,11 @@ public class BookmarkToInvisibleOutlineTest {
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1L, "Rated tickets"},
new Object[]{2L, "Rated appointments"},
- new Object[]{3L, "Rated E-Mails"},};
+ new Object[]{3L, "Rated E-Mails"},});
}
public class Table extends AbstractTable {
@@ -167,11 +167,11 @@ public class BookmarkToInvisibleOutlineTest {
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1L, "User Account"},
new Object[]{2L, "Guest Account"},
- new Object[]{3L, "Supervisor Account"},};
+ new Object[]{3L, "Supervisor Account"},});
}
public class Table extends AbstractTable {
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuNestedPageWithTablesTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuNestedPageWithTablesTest.java
index 4c167743b6..757aefb777 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuNestedPageWithTablesTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuNestedPageWithTablesTest.java
@@ -162,8 +162,8 @@ public class OutlineTreeContextMenuNestedPageWithTablesTest {
public static class PageWithTable extends AbstractPageWithTable<PageWithTable.Table> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{"a", "b"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{"a", "b"}});
}
@Override
@@ -215,8 +215,8 @@ public class OutlineTreeContextMenuNestedPageWithTablesTest {
public static class SubPageWithTable extends AbstractPageWithTable<PageWithTable.Table> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{"sub_a", "sub_b"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{"sub_a", "sub_b"}});
}
public class Table extends AbstractTable {
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuTest.java
index cf37c18eb6..70f0d4c155 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/OutlineTreeContextMenuTest.java
@@ -122,8 +122,8 @@ public class OutlineTreeContextMenuTest {
public static class PageWithTable extends AbstractPageWithTable<PageWithTable.Table> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{"a", "b"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{"a", "b"}});
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable1Test.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable1Test.java
index 6322d2f2fa..f3bb459707 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable1Test.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable1Test.java
@@ -89,8 +89,8 @@ public class PageWithTable1Test {
public int m_execPageDataLoadedCalled = 0;
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{"a", "b"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{"a", "b"}});
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable3Test.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable3Test.java
index b3be21c703..620d21d80e 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable3Test.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable3Test.java
@@ -91,8 +91,8 @@ public class PageWithTable3Test {
public static class PageWithTable extends AbstractPageWithTable<PageWithTable.Table> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1, 0, 0, 1},
new Object[]{3, 0, 1, 1},
new Object[]{5, 1, 0, 1},
@@ -101,7 +101,7 @@ public class PageWithTable3Test {
new Object[]{2, 0, 1, 0},
new Object[]{4, 1, 0, 0},
new Object[]{6, 1, 1, 0}
- };
+ });
}
public class Table extends AbstractTable {
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable6Test.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable6Test.java
index 7f53240438..905efd0dd4 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable6Test.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable6Test.java
@@ -95,10 +95,10 @@ public class PageWithTable6Test {
public static class PageWithTable extends AbstractPageWithTable<PageWithTable.Table> {
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1, "Enabled Account"},
- new Object[]{2, "Disabled Account"},};
+ new Object[]{2, "Disabled Account"},});
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable7Test.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable7Test.java
index b68c6c1226..580bd5d233 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable7Test.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTable7Test.java
@@ -69,8 +69,8 @@ public class PageWithTable7Test {
private String[] data = new String[]{"first", "second", "third", "fourth"};
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{new Object[]{data[m_counter]}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{new Object[]{data[m_counter]}});
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndPageBeanTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndPageBeanTest.java
index 899104ff6b..17b642e44c 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndPageBeanTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndPageBeanTest.java
@@ -41,13 +41,23 @@ import org.junit.runner.RunWith;
@RunWith(ScoutClientTestRunner.class)
public class PageWithTableAndPageBeanTest {
- private static final String SECOND_COL_CONTENT = "second col";
private static final String FIRST_COL_CONTENT = "first col";
+ private static final String SECOND_COL_CONTENT = "second col";
+
+ private static final String FIRST_COL_CONTENT2 = "first col 2";
+ private static final String SECOND_COL_CONTENT2 = "second col 2";
+
+ private static final String FIRST_COL_CONTENT3 = "first col 3";
+ private static final String SECOND_COL_CONTENT3 = "second col 3";
@Test
public void testExecLoadDataInvokesExecLoadTableData() throws Exception {
PageWithTable p = prepareTest(true);
- assertEquals(0, p.getTable().getRowCount());
+ assertEquals(2, p.getTable().getRowCount());
+ assertEquals(FIRST_COL_CONTENT2, p.getTable().getFirstColumn().getValue(0));
+ assertEquals(SECOND_COL_CONTENT2, p.getTable().getSecondColumn().getValue(0));
+ assertEquals(FIRST_COL_CONTENT3, p.getTable().getFirstColumn().getValue(1));
+ assertEquals(SECOND_COL_CONTENT3, p.getTable().getSecondColumn().getValue(1));
}
@Test
@@ -126,11 +136,15 @@ public class PageWithTableAndPageBeanTest {
}
@Override
+ @SuppressWarnings("deprecation")
protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
if (!m_invokeSuperExecLoadData) {
Assert.fail("execLoadTableData must not be called!");
}
- return new Object[0][];
+ return new Object[][]{
+ new Object[]{FIRST_COL_CONTENT2, SECOND_COL_CONTENT2},
+ new Object[]{FIRST_COL_CONTENT3, SECOND_COL_CONTENT3}
+ };
}
@Override
diff --git a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest.java b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest.java
index 43c227c739..c51825eba3 100644
--- a/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest.java
+++ b/org.eclipse.scout.rt.client.test/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest.java
@@ -128,11 +128,11 @@ public class PageWithTableAndTableCustomizerWhenEditingThenMissingSelectionTest
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1, "Account 1"},
new Object[]{2, "Account 2"},
- new Object[]{3, "Account 3"},};
+ new Object[]{3, "Account 3"},});
}
public class Table extends AbstractTable {
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/AbstractPageWithTableExtension.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/AbstractPageWithTableExtension.java
index 017bfc1c17..19e7a9eb33 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/AbstractPageWithTableExtension.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/AbstractPageWithTableExtension.java
@@ -29,7 +29,13 @@ public abstract class AbstractPageWithTableExtension<T extends ITable, OWNER ext
return chain.execCreateChildPage(row);
}
+ /**
+ * @deprecated will be removed with the N release. see {@link AbstractPageWithTable#execLoadTableData(SearchFilter)}
+ * for more information.
+ */
@Override
+ @Deprecated
+ @SuppressWarnings("deprecation")
public Object[][] execLoadTableData(PageWithTableLoadTableDataChain<? extends ITable> chain, SearchFilter filter) throws ProcessingException {
return chain.execLoadTableData(filter);
}
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/IPageWithTableExtension.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/IPageWithTableExtension.java
index 543d2d26ec..b86dab1ab4 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/IPageWithTableExtension.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/IPageWithTableExtension.java
@@ -19,6 +19,11 @@ public interface IPageWithTableExtension<T extends ITable, OWNER extends Abstrac
IPage execCreateChildPage(PageWithTableCreateChildPageChain<? extends ITable> chain, ITableRow row) throws ProcessingException;
+ /**
+ * @Deprecated will be removed with the N release. see {@link AbstractPageWithTable#execLoadTableData(SearchFilter)}
+ * for more information.
+ */
+ @Deprecated
Object[][] execLoadTableData(PageWithTableLoadTableDataChain<? extends ITable> chain, SearchFilter filter) throws ProcessingException;
void execPopulateTable(PageWithTablePopulateTableChain<? extends ITable> chain) throws ProcessingException;
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/PageWithTableChains.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/PageWithTableChains.java
index fa5b0dbde9..fc016f62a5 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/PageWithTableChains.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/extension/ui/desktop/outline/pages/PageWithTableChains.java
@@ -70,8 +70,14 @@ public final class PageWithTableChains {
super(extensions);
}
+ /**
+ * @deprecated will be removed with the N release. see {@link AbstractPageWithTable#execLoadTableData(SearchFilter)}
+ * for more information.
+ */
+ @Deprecated
public Object[][] execLoadTableData(final SearchFilter filter) throws ProcessingException {
MethodInvocation<Object[][]> methodInvocation = new MethodInvocation<Object[][]>() {
+ @SuppressWarnings("deprecation")
@Override
protected void callMethod(IPageWithTableExtension<? extends ITable, ? extends AbstractPageWithTable<? extends ITable>> next) throws ProcessingException {
setReturnValue(next.execLoadTableData(PageWithTableLoadTableDataChain.this, filter));
diff --git a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/AbstractPageWithTable.java b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/AbstractPageWithTable.java
index 9aa21bfb74..236d1a0cd8 100644
--- a/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/AbstractPageWithTable.java
+++ b/org.eclipse.scout.rt.client/src/org/eclipse/scout/rt/client/ui/desktop/outline/pages/AbstractPageWithTable.java
@@ -234,8 +234,21 @@ public abstract class AbstractPageWithTable<T extends ITable> extends AbstractPa
* {@link PageData} annotation is present on this class):
*
* <pre>
- * AbstractTablePageData pageData = service.loadPageData(...);
- * getTable().importFromTableBeanData(pageData);
+ * protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ * //logic to initialize the service, to handle the search filter...
+ * AbstractTablePageData pageData = service.loadPageData(...);
+ * importPageData(pageData);
+ * }
+ * </pre>
+ * <p/>
+ * An other possibility is to import some data array (Object[][]):
+ *
+ * <pre>
+ * protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ * //logic to initialize the service, to handle the search filter...
+ * Object[][] data = service.loadTableData(...);
+ * importTableData(data);
+ * }
* </pre>
* <p/>
* This default implementation invokes {@link #interceptLoadTableData(SearchFilter)} to fetch the tabular data and
@@ -249,28 +262,35 @@ public abstract class AbstractPageWithTable<T extends ITable> extends AbstractPa
@ConfigOperation
@Order(85)
protected void execLoadData(SearchFilter filter) throws ProcessingException {
- //do NOT reference the result data object and warp it into a ref, so the processor is allowed to delete the contents to free up memory sooner
- getTable().replaceRowsByMatrix(new AtomicReference<Object>(interceptLoadTableData(filter)));
+ importTableData(interceptLoadTableData(filter));
}
/**
- * Fetches and returns tabular data to be displayed in this page's table.
- * Typically this method will query a (backend) service for the data. Make
- * sure the returned content (including type definitions) matches the table columns.
- * <p>
- * This method is called by {@link #interceptPopulateTable()} and overriding this method generally is the most
- * convenient way to populate a table page. If you need more control over populating a table page, consider overriding
- * {@code execPopulateTable()} instead.
- * <p>
- * Subclasses can override this method. The default returns {@code null}.
+ * Deprecated: use #execLoadData(SearchFilter) instead.
+ * <p/>
+ * If you had something like this:
*
- * @param filter
- * a search filter, guaranteed not to be {@code null}
- * @return an {@code Object[][]} representing tabular data to be displayed in this page's table
- * @throws ProcessingException
+ * <pre>
+ * protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
+ * //logic to initialize the service, to handle the search filter...
+ * return service.loadTableData(..);
+ * }
+ * </pre>
+ * <p/>
+ * You should convert it to:
+ *
+ * <pre>
+ * protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ * //logic to initialize the service, to handle the search filter...
+ * importTableData(service.loadTableData(..));
+ * }
+ * </pre>
+ *
+ * @deprecated will be removed with the N release. use #execLoadData(SearchFilter) instead.
*/
@ConfigOperation
@Order(90)
+ @Deprecated
protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
return null;
}
@@ -712,6 +732,18 @@ public abstract class AbstractPageWithTable<T extends ITable> extends AbstractPa
}
/**
+ * Import data (Object[][]) in the table page. Object arrays are not type safe. The preferred way is to use a
+ * bean-based table page data and {@link #importPageData(AbstractTablePageData)}
+ *
+ * @param data
+ * @since 4.2.0 (Mars-M4)
+ */
+ protected void importTableData(Object[][] data) throws ProcessingException {
+ //do NOT reference the result data object and warp it into a ref, so the processor is allowed to delete the contents to free up memory sooner
+ getTable().replaceRowsByMatrix(new AtomicReference<Object>(data));
+ }
+
+ /**
* load table data
*/
protected void loadTableDataImpl() throws ProcessingException {
@@ -1041,6 +1073,11 @@ public abstract class AbstractPageWithTable<T extends ITable> extends AbstractPa
return chain.execCreateChildPage(row);
}
+ /**
+ * @deprecated will be removed with the N release. see #execLoadTableData(SearchFilter) for more information.
+ */
+ @Deprecated
+ @SuppressWarnings("deprecation")
protected final Object[][] interceptLoadTableData(SearchFilter filter) throws ProcessingException {
List<? extends IPageWithTableExtension<? extends ITable, ? extends AbstractPageWithTable<? extends ITable>>> extensions = getAllExtensions();
PageWithTableLoadTableDataChain<T> chain = new PageWithTableLoadTableDataChain<T>(extensions);
@@ -1081,7 +1118,13 @@ public abstract class AbstractPageWithTable<T extends ITable> extends AbstractPa
return getOwner().execCreateChildPage(row);
}
+ /**
+ * @deprecated will be removed with the N release. see {@link AbstractPageWithTable#execLoadTableData(SearchFilter)}
+ * for more information.
+ */
@Override
+ @Deprecated
+ @SuppressWarnings("deprecation")
public Object[][] execLoadTableData(PageWithTableLoadTableDataChain<? extends ITable> chain, SearchFilter filter) throws ProcessingException {
return getOwner().execLoadTableData(filter);
}
diff --git a/org.eclipse.scout.rt.extension.client.test/src/org/eclipse/scout/rt/extension/client/ui/desktop/outline/pages/fixture/modification/PageModificationTablePage.java b/org.eclipse.scout.rt.extension.client.test/src/org/eclipse/scout/rt/extension/client/ui/desktop/outline/pages/fixture/modification/PageModificationTablePage.java
index fad8b75a32..61b893e3dc 100644
--- a/org.eclipse.scout.rt.extension.client.test/src/org/eclipse/scout/rt/extension/client/ui/desktop/outline/pages/fixture/modification/PageModificationTablePage.java
+++ b/org.eclipse.scout.rt.extension.client.test/src/org/eclipse/scout/rt/extension/client/ui/desktop/outline/pages/fixture/modification/PageModificationTablePage.java
@@ -30,8 +30,8 @@ public class PageModificationTablePage extends AbstractExtensiblePageWithTable<P
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{{"001"}};
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{{"001"}});
}
public class Table extends AbstractExtensibleTable {
diff --git a/org.eclipse.scout.rt.ui.swing.test/src/org/eclipse/scout/rt/ui/swing/basic/SwingScoutModelFinderUiTest.java b/org.eclipse.scout.rt.ui.swing.test/src/org/eclipse/scout/rt/ui/swing/basic/SwingScoutModelFinderUiTest.java
index ad3291fbea..7858bf3d67 100644
--- a/org.eclipse.scout.rt.ui.swing.test/src/org/eclipse/scout/rt/ui/swing/basic/SwingScoutModelFinderUiTest.java
+++ b/org.eclipse.scout.rt.ui.swing.test/src/org/eclipse/scout/rt/ui/swing/basic/SwingScoutModelFinderUiTest.java
@@ -341,11 +341,11 @@ public class SwingScoutModelFinderUiTest {
}
@Override
- protected Object[][] execLoadTableData(SearchFilter filter) throws ProcessingException {
- return new Object[][]{
+ protected void execLoadData(SearchFilter filter) throws ProcessingException {
+ importTableData(new Object[][]{
new Object[]{1L, "Apache"},
new Object[]{2L, "Eclipse"},
- new Object[]{3L, "Oracle"},};
+ new Object[]{3L, "Oracle"},});
}
@Override

Back to the top