summaryrefslogtreecommitdiff
path: root/sources/protocols/VSRegisteredProtocols.java
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2008-05-18 04:21:44 +0000
committerPaul Buetow <paul@buetow.org>2008-05-18 04:21:44 +0000
commit34595bc248660a6cd9c51f2b7a18ed33ae31cce4 (patch)
treef75cc0844410079f9503d8aff2ec2281d7468d75 /sources/protocols/VSRegisteredProtocols.java
parent09b4f130a62ba5e05cef367f2d5adb357936d28b (diff)
Some cleanup in the VSDefaultPrefs.
Initial ProtocolEvent, which is for protocol activation/deactivation
Diffstat (limited to 'sources/protocols/VSRegisteredProtocols.java')
-rw-r--r--sources/protocols/VSRegisteredProtocols.java52
1 files changed, 28 insertions, 24 deletions
diff --git a/sources/protocols/VSRegisteredProtocols.java b/sources/protocols/VSRegisteredProtocols.java
index d3bcc20..d58385b 100644
--- a/sources/protocols/VSRegisteredProtocols.java
+++ b/sources/protocols/VSRegisteredProtocols.java
@@ -8,20 +8,22 @@ import utils.*;
public final class VSRegisteredProtocols {
private static HashMap<String,String> protocolClassnames;
+ private static HashMap<String,String> protocolShortnames;
private static HashMap<String,String> protocolNames;
private static VSPrefs prefs;
public static void init(VSPrefs prefs_) {
prefs = prefs_;
protocolNames = new HashMap<String, String>();
+ protocolShortnames = new HashMap<String, String>();
protocolClassnames = new HashMap<String, String>();
- registerProtocol("protocols.implementations.DummyProtocol");
- registerProtocol("protocols.implementations.PingPongProtocol");
- registerProtocol("protocols.implementations.ExternalTimeSyncProtocol");
- registerProtocol("protocols.implementations.InternalTimeSyncProtocol");
- registerProtocol("protocols.implementations.BroadcastSturmProtocol");
- registerProtocol("protocols.implementations.BerkelyTimeProtocol");
+ registerProtocol("protocols.implementations.BerkelyTimeProtocol", "Berkeley Algorithmus zur internen Sync.", "Berkeley");
+ registerProtocol("protocols.implementations.BroadcastSturmProtocol", "Broadcaststurm", null);
+ registerProtocol("protocols.implementations.DummyProtocol", "Beispiel/Dummy", null);
+ registerProtocol("protocols.implementations.ExternalTimeSyncProtocol", "Christians Methode zur externen Sync.", "Christians");
+ registerProtocol("protocols.implementations.InternalTimeSyncProtocol", "Interne Synchronisation", "Interne Sync.");
+ registerProtocol("protocols.implementations.PingPongProtocol", "Ping Pong", null);
}
public static Vector<String> getProtocolNames() {
@@ -36,6 +38,18 @@ public final class VSRegisteredProtocols {
return vector;
}
+ public static Vector<String> getProtocolClassnames() {
+ Set<String> set = protocolNames.keySet();
+ Vector<String> vector = new Vector<String>();
+
+ for (String protocolClassname : set)
+ vector.add(protocolClassname);
+
+ Collections.sort(vector);
+
+ return vector;
+ }
+
public static String getProtocolClassname(String protocolName) {
return protocolClassnames.get(protocolName);
}
@@ -44,6 +58,10 @@ public final class VSRegisteredProtocols {
return protocolNames.get(protocolClassname);
}
+ public static String getProtocolShortname(String protocolClassname) {
+ return protocolShortnames.get(protocolClassname);
+ }
+
public static VSProtocol getProtocolInstanceByName(String protocolName, VSProcess process) {
final String protocolClassname = protocolClassnames.get(protocolName);
final Object protocolObj = new VSClassLoader().newInstance(protocolClassname);
@@ -57,26 +75,12 @@ public final class VSRegisteredProtocols {
return null;
}
- public static void registerProtocol(String protocolClassname) {
- int index = protocolClassname.lastIndexOf('.');
-
- if (index < 0) {
- protocolNames.put(protocolClassname, protocolClassname);
- protocolClassnames.put(protocolClassname, protocolClassname);
- return;
- }
-
- String protocolName = protocolClassname.substring(index + 1);
- index = protocolName.lastIndexOf("Protocol");
-
- if (index < 0 || index != protocolName.length() - 8) {
- protocolNames.put(protocolClassname, protocolName);
- protocolClassnames.put(protocolName, protocolClassname);
- return;
- }
+ private static void registerProtocol(String protocolClassname, String protocolName, String protocolShortname) {
+ if (protocolShortname == null)
+ protocolShortname = protocolName;
- protocolName = protocolName.substring(0, index);
protocolNames.put(protocolClassname, protocolName);
+ protocolShortnames.put(protocolClassname, protocolShortname);
protocolClassnames.put(protocolName, protocolClassname);
}
}