keys.scala, etc.: Make merging public keys have a progress bar.
[tripe-android] / main.scala
index 4560638..16d2b0a 100644 (file)
@@ -1,64 +1,25 @@
-package uk.org.distorted;
+package uk.org.distorted.tripe; package object test {
 
-import java.io.{InputStreamReader, OutputStreamWriter};
+import java.io.{BufferedReader, BufferedWriter,
+               InputStreamReader, OutputStreamWriter};
 import scala.collection.mutable.StringBuilder;
 import scala.util.control.Breaks;
 
-package object tripe {
-  def main(args: Array[String])
-  {
-    println("Hello from Scala");
-    JNI.test();
-    val toy = JNI.make();
-    for (i <- 0 until args.length) println(f"$i%2d: ${args(i)}%s");
-    //toy match { case toy: Array[Byte] => toy(1) = -1; case _ => () }
-    JNI.check(toy);
+def main(args: Array[String])
+{
+  val conn = new sys.Connection(args(0));
+  try {
+    val rd = new BufferedReader(new InputStreamReader(conn.input));
+    val wr = new BufferedWriter(new OutputStreamWriter(conn.output));
 
-    val conn = new Connection;
-    try {
-      val rd = new InputStreamReader(new ConnectionInputStream(conn));
-      val wr = new OutputStreamWriter(new ConnectionOutputStream(conn));
+    wr.write("Hello, world!\n"); wr.flush();
 
-      wr.write("Hello, world!\n"); wr.flush();
-
-      val buf = new Array[Char](4096);
-      val line = new StringBuilder;
-
-      val R = new Breaks;
-      val L = new Breaks;
-      var any = false;
-      R.breakable {
-       while (true) {
-         val n = rd.read(buf);
-         if (n <= 0) R.break;
-         var pos = 0;
-         L.breakable {
-           while (true) {
-             val nl = buf.indexOf('\n', pos);
-             if (nl == -1 || nl >= n) {
-               if (pos < n)
-                 { line.appendAll(buf, pos, n - pos); any = true; }
-               L.break;
-             }
-             val s = if (!any)
-               new String(buf, pos, nl - pos);
-             else {
-               line.appendAll(buf, pos, nl - pos);
-               val s = line.mkString;
-               line.clear(); any = false;
-               s
-             };
-             println(s"found line `$s'");
-             pos = nl + 1;
-           }
-         }
-       }
-      }
-
-      rd.close();
-      wr.close();
-    } finally {
-      conn.close();
-    }
+    for (line <- lines(rd)) println(s"found line `$line'");
+    rd.close();
+    wr.close();
+  } finally {
+    conn.close();
   }
 }
+
+}