source: java/main/src/main/java/com/framsticks/core/Tree.java @ 102

Last change on this file since 102 was 102, checked in by psniegowski, 11 years ago

HIGHLIGHTS:

for Joinables running

CHANGELOG:
Add WorkPackageLogic? and classes representing prime experiment state.

Add classes for PrimeExperiment? state.

Extract single netload routine in Simulator.

Working netload with dummy content in PrimeExperiment?.

More development with NetLoadSaveLogic? and PrimeExperiment?.

Improvement around prime.

Improve BufferedDispatcher?.isActive logic.

Add prime-all.xml configuration.

Manual connecting to existing simulators from GUI.

Guard in SimulatorConnector? against expdef mismatch.

Guard against empty target dispatcher in BufferedDispatcher?.

Make BufferedDispatcher? a Dispatcher (and Joinable).

Minor improvements.

Done StackedJoinable?, improve Experiment.

Develop StackedJoinable?.

Add StackedJoinable? utility joinables controller.

Add dependency on apache-commons-lang.

Add ready ListChange? on Simulators.

Improve hints in ListChange?.

Several improvements.

Found bug with dispatching in Experiment.

Minor improvements.

Fix bug with early finishing Server.

Many changes in Dispatching.

Fix bug with connection.

Do not obfuscate log with socket related exceptions.

Add SocketClosedException?.

Add SimulatorConnector?.

Work out conception of experiment composing of logics building blocks.

Rename SinkInterface? to Sink.

Move saving of Accesses into AccessOperations?.

Some improvements to Experiment.

Improve joinables.

Fix issue with joinables closing.

Add direct and managed consoles to popup menu.

File size: 2.6 KB
Line 
1package com.framsticks.core;
2
3import javax.annotation.Nonnull;
4
5import com.framsticks.communication.queries.NeedFileAcceptor;
6import com.framsticks.params.Access;
7import com.framsticks.params.CompositeParam;
8import com.framsticks.params.EventListener;
9import com.framsticks.params.FramsClass;
10import com.framsticks.params.PrimitiveParam;
11import com.framsticks.params.Registry;
12import com.framsticks.params.types.EventParam;
13import com.framsticks.params.types.ProcedureParam;
14import com.framsticks.util.dispatching.Dispatcher;
15import com.framsticks.util.dispatching.DispatcherSetable;
16import com.framsticks.util.dispatching.ExceptionResultHandler;
17import com.framsticks.util.dispatching.Future;
18import com.framsticks.util.dispatching.Joinable;
19
20public interface Tree extends Dispatcher<Tree>, DispatcherSetable<Tree>, Joinable, ExceptionResultHandler {
21
22        public @Nonnull Node getAssignedRoot();
23        public void assignRootParam(CompositeParam param);
24        public void assignRootObject(Object object);
25
26        public @Nonnull Access prepareAccess(CompositeParam param);
27        public void takeAllFrom(Registry source);
28
29        public FramsClass getInfoFromCache(String id);
30
31        public void putInfoIntoCache(FramsClass framclass);
32
33        // /**
34        //  *
35        //  * Functions accepts ValueParam, because it is also possible to get number of List elements.
36        //  *
37        //  */
38        // public void get(Path path, ValueParam param, Future<Object> future);
39
40        public void get(Path path, Future<Path> future);
41
42        public void call(Path path, ProcedureParam param, Object[] arguments, Future<Object> future);
43
44        /**
45         *
46         * Functions accepts PrimitiveParam<?>, because it is not possible to set number of List elements.
47         *
48         */
49        public void set(Path path, PrimitiveParam<?> param, Object value, Future<Integer> future);
50
51        public void info(Path path, Future<FramsClass> future);
52
53        public void setExceptionHandler(ExceptionResultHandler handler);
54
55        public ExceptionResultHandler getExceptionHandler();
56
57        // public void setDispatcher(Dispatcher<Tree> dispatcher);
58
59        // public Dispatcher<Tree> getDispatcher();
60
61        public <A> void addListener(Path path, EventParam param, EventListener<A> listener, Class<A> argumentType, Future<Void> future);
62
63        public void removeListener(Path path, EventParam param, EventListener<?> listener, Future<Void> future);
64
65        public Registry getRegistry();
66
67        public <T> void putSideNote(Object object, SideNoteKey<T> key, T value);
68
69        public boolean removeSideNote(Object object, SideNoteKey<?> key);
70
71        public <T> T getSideNote(Object object, SideNoteKey<T> key);
72
73        public void addNeedFileAcceptor(int priority, NeedFileAcceptor acceptor);
74
75        public void removeNeedFileAcceptor(NeedFileAcceptor acceptor);
76
77}
Note: See TracBrowser for help on using the repository browser.