[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r18097 - in gnunet-java: . src/org/gnunet/construct src/org
From: |
gnunet |
Subject: |
[GNUnet-SVN] r18097 - in gnunet-java: . src/org/gnunet/construct src/org/gnunet/messages src/org/gnunet/util test/org/gnunet/util |
Date: |
Thu, 10 Nov 2011 16:15:52 +0100 |
Author: grothoff
Date: 2011-11-10 16:15:52 +0100 (Thu, 10 Nov 2011)
New Revision: 18097
Added:
gnunet-java/src/org/gnunet/construct/uint64_t.java
gnunet-java/src/org/gnunet/messages/RelativeTimeNBO.java
Modified:
gnunet-java/ISSUES
gnunet-java/src/org/gnunet/messages/MessageHeader.java
gnunet-java/src/org/gnunet/util/Configuration.java
gnunet-java/src/org/gnunet/util/RelativeTime.java
gnunet-java/test/org/gnunet/util/ConfigurationTest.java
Log:
stuff
Modified: gnunet-java/ISSUES
===================================================================
--- gnunet-java/ISSUES 2011-11-10 15:09:58 UTC (rev 18096)
+++ gnunet-java/ISSUES 2011-11-10 15:15:52 UTC (rev 18097)
@@ -37,8 +37,9 @@
* process priority
+* signals:
+ http://www.ibm.com/developerworks/java/library/i-signalhandling/
-
Used Libraries:
* https://github.com/magnuss/java-bloomfilter (LGPL) => freeway!
* http://code.google.com/p/junixsocket/ (Apache License 2.0)
Added: gnunet-java/src/org/gnunet/construct/uint64_t.java
===================================================================
--- gnunet-java/src/org/gnunet/construct/uint64_t.java
(rev 0)
+++ gnunet-java/src/org/gnunet/construct/uint64_t.java 2011-11-10 15:15:52 UTC
(rev 18097)
@@ -0,0 +1,17 @@
+package org.gnunet.construct;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * 16-bit @UnsignedInteger in network byte order.
+ *
+ * @author grothoff
+ */
address@hidden(RetentionPolicy.RUNTIME)
address@hidden(ElementType.FIELD)
+public @interface uint64_t {
+
+}
Modified: gnunet-java/src/org/gnunet/messages/MessageHeader.java
===================================================================
--- gnunet-java/src/org/gnunet/messages/MessageHeader.java 2011-11-10
15:09:58 UTC (rev 18096)
+++ gnunet-java/src/org/gnunet/messages/MessageHeader.java 2011-11-10
15:15:52 UTC (rev 18097)
@@ -9,7 +9,8 @@
@TotalSize
public int size;
- @uint16_t
- public int type;
+ @uint16_t
+ public int type;
+
}
Added: gnunet-java/src/org/gnunet/messages/RelativeTimeNBO.java
===================================================================
--- gnunet-java/src/org/gnunet/messages/RelativeTimeNBO.java
(rev 0)
+++ gnunet-java/src/org/gnunet/messages/RelativeTimeNBO.java 2011-11-10
15:15:52 UTC (rev 18097)
@@ -0,0 +1,18 @@
+package org.gnunet.messages;
+
+import org.gnunet.construct.uint64_t;
+
+public class RelativeTimeNBO {
+
+ /**
+ * Value__ still in Java-byte order, needs to be converted to Network byte
order by the Construct class.
+ */
+ @uint64_t
+ public long value__;
+
+ public RelativeTimeNBO (long value)
+ {
+ this.value__ = value;
+ }
+
+}
Modified: gnunet-java/src/org/gnunet/util/Configuration.java
===================================================================
--- gnunet-java/src/org/gnunet/util/Configuration.java 2011-11-10 15:09:58 UTC
(rev 18096)
+++ gnunet-java/src/org/gnunet/util/Configuration.java 2011-11-10 15:15:52 UTC
(rev 18097)
@@ -16,9 +16,8 @@
along with GNUnet; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
-*/
+ */
-
package org.gnunet.util;
import java.io.BufferedWriter;
@@ -52,15 +51,22 @@
private static Pattern comment = Pattern.compile("\\s*[%#].*\n?");
private static Pattern delim = Pattern.compile("\\s*\\n\\s*");
- public Map<String, Map<String, String>> sections;
+ private final Map<String, Map<String, String>> sections = new
LinkedHashMap<String, Map<String, String>>();
/**
* Start with an empty configuration.
*/
public Configuration() {
- sections = new LinkedHashMap<String, Map<String, String>>();
}
+ private Configuration(Configuration c) {
+ sections.putAll(c.sections);
+ }
+
+ public Configuration clone() {
+ return new Configuration(this);
+ }
+
/**
* Parse a configuration file, add all of the options in the file to the
* configuration environment.
@@ -194,18 +200,18 @@
* @param option
* @return null if value not in configuration, the option's value otherwise
*/
- public Long getValueNumer(String section, String option) {
+ public long getValueNumer(String section, String option) {
String num_str = getValueString(section, option);
if (num_str == null) {
- return null;
+ throw new ParsingError ("Failure in configuration section " +
section + " option " + option + ": value empty");
}
try {
return Long.parseLong(num_str);
} catch (NumberFormatException e) {
- return null;
+ throw new ParsingError ("Failure in configuration section " +
section + " option " + option + ": " + e.getMessage(), e);
}
}
-
+
/**
* Set an option to a string value in a section.
*
@@ -320,6 +326,7 @@
return sections.keySet();
}
+
/**
* Expand an expression of the form "$FOO/BAR" to "DIRECTORY/BAR" where
* either in the "PATHS" section or the environment "FOO" is set to
@@ -362,4 +369,19 @@
throw new UnsupportedOperationException();
}
+
+ public static class ParsingError extends Error
+ {
+ ParsingError (String msg, Throwable t)
+ {
+ super(msg, t);
+ }
+ ParsingError (String msg)
+ {
+ super(msg);
+ }
+ }
+
+
}
+
Modified: gnunet-java/src/org/gnunet/util/RelativeTime.java
===================================================================
--- gnunet-java/src/org/gnunet/util/RelativeTime.java 2011-11-10 15:09:58 UTC
(rev 18096)
+++ gnunet-java/src/org/gnunet/util/RelativeTime.java 2011-11-10 15:15:52 UTC
(rev 18097)
@@ -21,6 +21,7 @@
package org.gnunet.util;
+import org.gnunet.messages.RelativeTimeNBO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -143,6 +144,15 @@
}
return new RelativeTime(new_rel_value);
}
+
+ public RelativeTimeNBO toNBO()
+ {
+ long rval = this.rel_value;
+ assert (rval >= 0);
+ if (rval == FOREVER.rel_value)
+ rval = -1L; /* 0xFFFFFFFFFFFFFFFF for network format! */
+ return new RelativeTimeNBO(rval);
+ }
/**
* Subtract relative timestamp from the other.
Modified: gnunet-java/test/org/gnunet/util/ConfigurationTest.java
===================================================================
--- gnunet-java/test/org/gnunet/util/ConfigurationTest.java 2011-11-10
15:09:58 UTC (rev 18096)
+++ gnunet-java/test/org/gnunet/util/ConfigurationTest.java 2011-11-10
15:15:52 UTC (rev 18097)
@@ -17,7 +17,7 @@
// TODO: check results
- System.out.println(c.sections);
+ // System.out.println(c.sections);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r18097 - in gnunet-java: . src/org/gnunet/construct src/org/gnunet/messages src/org/gnunet/util test/org/gnunet/util,
gnunet <=