source: trunk/EventBenchCore/src/de/ugoe/cs/eventbench/data/ReplayableEvent.java @ 57

Last change on this file since 57 was 57, checked in by sherbold, 13 years ago

+ added de.ugoe.cs.eventbench.IReplayDecorator as attribute to de.ugoe.cs.eventbench.data.ReplayableEvent? to simpliefy usage

File size: 1.2 KB
Line 
1package de.ugoe.cs.eventbench.data;
2
3import java.util.LinkedList;
4import java.util.List;
5
6import de.ugoe.cs.eventbench.IReplayDecorator;
7
8public class ReplayableEvent<T extends IReplayable> extends Event<T> {
9
10        private List<T> replayEvents = new LinkedList<T>();;
11
12        private boolean replayValid = true;
13       
14        private IReplayDecorator decorator = null;
15       
16        public ReplayableEvent(String type) {
17                super(type);
18        }
19       
20        public void addReplaySequence(List<T> generatedReplaySeq) {
21                replayEvents.addAll(generatedReplaySeq);
22        }
23
24        public void addReplayEvent(T replayable) {
25                replayEvents.add(replayable);
26        }
27       
28        /**
29         * <p>
30         * Returns a the list of replay events.
31         * </p>
32         * <p>
33         * The return value is a copy of the list used internally!
34         * </p>
35         * @return list of replay events.
36         */
37        public List<T> getReplayMessages() {
38                return new LinkedList<T>(replayEvents);
39        }
40       
41        public boolean hasValidReplay() {
42                return replayValid;
43        }
44
45        public void invalidateReplay() {
46                replayValid = false;
47        }
48
49        public void setDecorator(IReplayDecorator decorator) {
50                this.decorator = decorator;
51        }
52       
53        public IReplayDecorator getReplayDecorator() {
54                return decorator;
55        }
56
57}
Note: See TracBrowser for help on using the repository browser.