summaryrefslogtreecommitdiff
path: root/sources/events/VSAbstractEvent.java
diff options
context:
space:
mode:
authorPaul Buetow (centauri) <puppet@mx.buetow.org>2015-05-23 21:59:43 +0100
committerPaul Buetow (centauri) <puppet@mx.buetow.org>2015-05-23 21:59:43 +0100
commit9fc2fc3ccdedf1b7e48f8dfb618ca6cb6a2a662e (patch)
tree0fa92fe4e75cb53ffbf7eb56b5455eb9457bb06c /sources/events/VSAbstractEvent.java
parentf7873669a43421331e14b8921ebdaa8af4393bd5 (diff)
parent32749241efc1f5f70056d74a90237388f57ea350 (diff)
Merge remote-tracking branch 'remotes/github/packages' into packagespackages
Diffstat (limited to 'sources/events/VSAbstractEvent.java')
-rw-r--r--sources/events/VSAbstractEvent.java266
1 files changed, 0 insertions, 266 deletions
diff --git a/sources/events/VSAbstractEvent.java b/sources/events/VSAbstractEvent.java
deleted file mode 100644
index ac9a61f..0000000
--- a/sources/events/VSAbstractEvent.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*
- * VS-Simulator (http://vs-sim.buetow.org)
- * Copyright (c) 2008 - 2009 by Dipl.-Inform. (FH) Paul C. Buetow
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * All icons of the icons/ folder are under a Creative Commons
- * Attribution-Noncommercial-Share Alike License a CC-by-nc-sa.
- *
- * The icon's homepage is http://code.google.com/p/ultimate-gnome/
- */
-
-package events;
-
-import java.io.*;
-
-import core.VSAbstractProcess;
-import core.VSInternalProcess;
-import exceptions.*;
-import prefs.*;
-import serialize.*;
-
-/**
- * The class VSAbstractEvent. This abstract class defines the basic framework
- * of each event. an event is used to fullfill a specific task. An event object
- * will get stored in a VSTask object.
- *
- * @author Paul C. Buetow
- */
-abstract public class VSAbstractEvent extends VSSerializablePrefs {
- /** The serial version uid */
- private static final long serialVersionUID = 1L;
-
- /** The prefs. */
- public VSPrefs prefs;
-
- /** The process. */
- public VSAbstractProcess process;
-
- /** The event shortname. */
- private String eventShortname;
-
- /** The event classname. */
- private String eventClassname;
-
- /**
- * Creates a copy of the event and using a new process.
- *
- * @param theProcess The new process
- * @return The copy
- */
- final public VSAbstractEvent getCopy(VSInternalProcess theProcess)
- throws VSEventNotCopyableException {
-
- if (theProcess == null)
- theProcess = (VSInternalProcess) process;
-
- if (!(this instanceof VSCopyableEvent))
- throw new VSEventNotCopyableException(
- eventShortname + " (" + eventClassname + ")");
-
- VSAbstractEvent copy =
- VSRegisteredEvents.createEventInstanceByClassname(
- eventClassname, theProcess);
-
- ((VSCopyableEvent) this).initCopy(copy);
- copy.setShortname(eventShortname);
-
- return copy;
- }
-
- /**
- * Creates a copy of the event.
- *
- * @return The copy
- */
- final public VSAbstractEvent getCopy() throws VSEventNotCopyableException {
- return getCopy(null);
- }
-
- /**
- * Inits the event.
- *
- * @param process the process
- */
- public void init(VSInternalProcess process) {
- if (this.process == null) {
- this.process = process;
- this.prefs = process.getPrefs();
- init();
- }
- }
-
- /**
- * Inits the event without setting the processes and prefs variables
- * of the object.
- */
- public void init() {
- onInit();
- }
-
- /**
- * Sets the classname.
- *
- * @param eventClassname the new classname
- */
- public final void setClassname(String eventClassname) {
- if (eventClassname.startsWith("class "))
- eventClassname = eventClassname.substring(6);
-
- this.eventClassname = eventClassname;
- }
-
- /**
- * Gets the classname.
- *
- * @return the classname
- */
- public String getClassname() {
- return eventClassname;
- }
-
- /**
- * Gets the name.
- *
- * @return the name
- */
- public String getName() {
- return VSRegisteredEvents.getNameByClassname(eventClassname);
- }
-
- /**
- * Sets the shortname.
- *
- * @param eventShortname the new shortname
- */
- public void setShortname(String eventShortname) {
- this.eventShortname = eventShortname;
- }
-
- /**
- * Gets the shortname.
- *
- * @return the shortname
- */
- public String getShortname() {
- if (eventShortname == null)
- return VSRegisteredEvents.getShortnameByClassname(eventClassname);
-
- return eventShortname;
- }
-
- /**
- * Gets the process.
- *
- * @return the process
- */
- public VSAbstractProcess getProcess() {
- return process;
- }
-
- /**
- * Logg a specific message.
- *
- * @param message the loging message
- */
- public void log(String message) {
- process.log(/*toString() + "; " + */message);
- }
-
- /**
- * Checks if the event equals to another event..
- *
- * @param event the event to compare against.
- *
- * @return true, if the events are the same (have the same event id)
- */
- public boolean equals(VSAbstractEvent event) {
- return super.getID() == event.getID();
- }
-
- /**
- * Every event has its own initialize method.
- */
- abstract public void onInit();
-
- /**
- * Every event can get started. This method get's executed if the event
- * takes place.
- */
- abstract public void onStart();
-
- /**
- * Every event has to be able to set its own shortname
- *
- * @param shortName The saved short name. May be overwritten due wrong lang
- *
- * @return The event's shortname
- */
- abstract protected String createShortname(String savedShortname);
-
- /* (non-Javadoc)
- * @see serialize.VSSerializable#serialize(serialize.VSSerialize,
- * java.io.ObjectOutputStream)
- */
- public synchronized void serialize(VSSerialize serialize,
- ObjectOutputStream objectOutputStream)
- throws IOException {
- super.serialize(serialize, objectOutputStream);
-
- if (VSSerialize.DEBUG)
- System.out.println("Serializing: VSAbstractEvent; id="+getID());
-
- /** For later backwards compatibility, to add more stuff */
- objectOutputStream.writeObject(new Boolean(false));
-
- objectOutputStream.writeObject(new Integer(super.getID()));
- objectOutputStream.writeObject(eventShortname);
- objectOutputStream.writeObject(eventClassname);
-
- /** For later backwards compatibility, to add more stuff */
- objectOutputStream.writeObject(new Boolean(false));
- }
-
- /* (non-Javadoc)
- * @see serialize.VSSerializable#deserialize(serialize.VSSerialize,
- * java.io.ObjectInputStream)
- */
- @SuppressWarnings("unchecked")
- public synchronized void deserialize(VSSerialize serialize,
- ObjectInputStream objectInputStream)
- throws IOException, ClassNotFoundException {
- super.deserialize(serialize, objectInputStream);
-
- if (VSSerialize.DEBUG)
- System.out.print("Deserializing: VSAbstractEvent ");
-
- /** For later backwards compatibility, to add more stuff */
- objectInputStream.readObject();
-
- int id = ((Integer) objectInputStream.readObject()).intValue();
- String savedEventShortname = (String) objectInputStream.readObject();
- this.eventClassname = (String) objectInputStream.readObject();
- this.eventShortname = createShortname(savedEventShortname);
-
- if (VSSerialize.DEBUG)
- System.out.println(eventClassname);
-
- serialize.setObject(id, "event", this);
-
- /** For later backwards compatibility, to add more stuff */
- objectInputStream.readObject();
- }
-}