View Javadoc
1   package com.srv4pos.server.api.sync.sample;
2   
3   import com.srv4pos.server.api.seller.SellerInfo;
4   import com.srv4pos.server.api.sync.EntitySyncAdapter;
5   import com.srv4pos.server.api.sync.Uploader;
6   
7   public class SellerSyncAdapter implements EntitySyncAdapter<SellerInfo> {
8       private final MemoryLocalStorage storage;
9   
10      public SellerSyncAdapter(MemoryLocalStorage storage) {
11          this.storage = storage;
12      }
13  
14      public void upload(Uploader<SellerInfo> uploader) {
15          // we don't allow to delete seller, so this method is for seller update only
16          if (!storage.isSellerSynced()) {
17              uploader.upload(storage.getSeller(), null);
18              storage.setSellerSynced(true);
19          }
20      }
21  
22      public void createOrUpdateEntityFromInfo(SellerInfo info) {
23          // we need only seller name from server
24          if (info.getName() == null) {
25              storage.setSellerSynced(false); // it means we need to sent seller name in a future (upload)
26              return;
27          } else {
28              storage.setSeller(info);
29              storage.setSellerSynced(true);
30          }
31      }
32  }