summaryrefslogtreecommitdiffstats
path: root/shared
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2014-10-08 17:30:13 +0300
committerVaadin Code Review <review@vaadin.com>2014-10-22 13:26:00 +0000
commit7622128012cd60bb82612a18b7c6582ac0e842ae (patch)
tree64b5b835bdb2af6c029b5dbacb657681f5adfc40 /shared
parentf53ba6dfcf531b917deda959f341aa6f85da99c0 (diff)
downloadvaadin-framework-7622128012cd60bb82612a18b7c6582ac0e842ae.tar.gz
vaadin-framework-7622128012cd60bb82612a18b7c6582ac0e842ae.zip
Fix RpcDataSource to use RPC for row pins/unpins (#13334)
This patch removes the temprarilyPinnedRows workaround from AbstractRemoteDataSource and refactors the whole feature to be part of RpcDataSource where it should be. Change-Id: Id55020dd11dda3dcf54dfe3c1b41af8e495c1c0c
Diffstat (limited to 'shared')
-rw-r--r--shared/src/com/vaadin/shared/data/DataRequestRpc.java22
1 files changed, 12 insertions, 10 deletions
diff --git a/shared/src/com/vaadin/shared/data/DataRequestRpc.java b/shared/src/com/vaadin/shared/data/DataRequestRpc.java
index 000d196be9..637a353447 100644
--- a/shared/src/com/vaadin/shared/data/DataRequestRpc.java
+++ b/shared/src/com/vaadin/shared/data/DataRequestRpc.java
@@ -16,8 +16,7 @@
package com.vaadin.shared.data;
-import java.util.List;
-
+import com.vaadin.shared.annotations.Delayed;
import com.vaadin.shared.communication.ServerRpc;
/**
@@ -39,17 +38,20 @@ public interface DataRequestRpc extends ServerRpc {
* the index of the first cached row
* @param cacheSize
* the number of cached rows
- * @param temporarilyPinnedKeys
- * the keys that should remain pinned, even if some of these
- * would fall out of the cache range
*/
public void requestRows(int firstRowIndex, int numberOfRows,
- int firstCachedRowIndex, int cacheSize,
- List<String> temporarilyPinnedKeys);
+ int firstCachedRowIndex, int cacheSize);
/**
- * Informs the back-end that the temporarily pinned keys in
- * {@link #requestRows(int, int, int, int, List)} may be released.
+ * Informs the server that an item referenced with a key pinned status has
+ * changed. This is a delayed call that happens along with next rpc call to
+ * server.
+ *
+ * @param key
+ * key mapping to item
+ * @param isPinned
+ * pinned status of referenced item
*/
- public void releaseTemporarilyPinnedKeys();
+ @Delayed
+ public void setPinned(String key, boolean isPinned);
}