]> git.somenet.org - pub/jan/sbc.git/blob - src/main/java/at/ac/tuwien/sbc/valesriegler/xvsm/SpaceListenerImpl.java
[XVSM] Add forgotten file...
[pub/jan/sbc.git] / src / main / java / at / ac / tuwien / sbc / valesriegler / xvsm / SpaceListenerImpl.java
1 package at.ac.tuwien.sbc.valesriegler.xvsm;
2
3 import java.io.Serializable;
4 import java.util.List;
5
6 import org.mozartspaces.capi3.AnyCoordinator;
7 import org.mozartspaces.capi3.FifoCoordinator;
8 import org.mozartspaces.core.Capi;
9 import org.mozartspaces.core.ContainerReference;
10 import org.mozartspaces.core.MzsConstants;
11 import org.mozartspaces.core.MzsConstants.RequestTimeout;
12
13 /**
14  * 
15  * @author Gregor Riegler <gregor DOT riegler AT gmail DOT com>
16  *
17  * @see SpaceListener
18  */
19 public abstract class SpaceListenerImpl extends SpaceListener {
20
21         private final Capi capi;
22         private final ContainerReference cref;
23
24         public SpaceListenerImpl(Capi core, ContainerReference cref) {
25                 this.capi = core;
26                 this.cref= cref;
27         }
28         
29         public SpaceListenerImpl(Capi core, ContainerReference cref, boolean lookAround) {
30                 this(core, cref);
31                 this.lookAround  = lookAround;
32         }
33         
34         public SpaceListenerImpl(Capi core, ContainerReference cref, long milliseconds) {
35                 this(core, cref);
36                 this.timeout = milliseconds;
37         }
38
39         @Override
40         List<? extends Serializable> getEntries() throws Exception {
41                 return capi.read(cref, FifoCoordinator
42                                 .newSelector(MzsConstants.Selecting.COUNT_MAX),
43                                 RequestTimeout.DEFAULT, null);
44         }
45 }