From df450b20f7a4af847b74aee8110cf92df3e0bda9 Mon Sep 17 00:00:00 2001 From: "Jesus M. Castagnetto" Date: Fri, 1 Feb 2013 22:42:01 -0500 Subject: [PATCH 01/70] Registering new XOR command --- .../refine/expr/functions/booleans/Xor.java | 19 +++++++++++-------- .../refine/grel/ControlFunctionRegistry.java | 2 ++ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/main/src/com/google/refine/expr/functions/booleans/Xor.java b/main/src/com/google/refine/expr/functions/booleans/Xor.java index 27e9ffc4e..84ed87bd3 100644 --- a/main/src/com/google/refine/expr/functions/booleans/Xor.java +++ b/main/src/com/google/refine/expr/functions/booleans/Xor.java @@ -2,7 +2,7 @@ Implementing a naive XOR operation Copyright 2013, Jesus M. Castagnetto License: BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -*/ + */ package com.google.refine.expr.functions.booleans; @@ -19,8 +19,8 @@ public class Xor implements Function { @Override public Object call(Properties bindings, Object[] args) { - if (args.length == 2 && - args[0] != null && args[0] instanceof Boolean && + if (args.length == 2 && + args[0] != null && args[0] instanceof Boolean && args[1] != null && args[0] instanceof Boolean) { boolean o1 = ((Boolean) args[0]).booleanValue(); boolean o2 = ((Boolean) args[1]).booleanValue(); @@ -28,15 +28,18 @@ public class Xor implements Function { } return new EvalError(ControlFunctionRegistry.getFunctionName(this) + " expects 2 booleans"); } - + @Override public void write(JSONWriter writer, Properties options) throws JSONException { - + writer.object(); - writer.key("description"); writer.value("XORs two boolean values"); - writer.key("params"); writer.value("boolean a, boolean b"); - writer.key("returns"); writer.value("boolean"); + writer.key("description"); + writer.value("XORs two boolean values"); + writer.key("params"); + writer.value("boolean a, boolean b"); + writer.key("returns"); + writer.value("boolean"); writer.endObject(); } } diff --git a/main/src/com/google/refine/grel/ControlFunctionRegistry.java b/main/src/com/google/refine/grel/ControlFunctionRegistry.java index 4e615a3a8..6dad3c2dd 100644 --- a/main/src/com/google/refine/grel/ControlFunctionRegistry.java +++ b/main/src/com/google/refine/grel/ControlFunctionRegistry.java @@ -56,6 +56,7 @@ import com.google.refine.expr.functions.arrays.Uniques; import com.google.refine.expr.functions.booleans.And; import com.google.refine.expr.functions.booleans.Not; import com.google.refine.expr.functions.booleans.Or; +import com.google.refine.expr.functions.booleans.Xor; import com.google.refine.expr.functions.date.DatePart; import com.google.refine.expr.functions.date.Inc; import com.google.refine.expr.functions.date.Now; @@ -284,6 +285,7 @@ public class ControlFunctionRegistry { registerFunction("and", new And()); registerFunction("or", new Or()); registerFunction("not", new Not()); + registerFunction("xor", new Xor()); registerFunction("cross", new Cross()); From 36d2c4ac4469277083e07f884d05a5df19bf81b2 Mon Sep 17 00:00:00 2001 From: "Jesus M. Castagnetto" Date: Fri, 1 Feb 2013 23:44:35 -0500 Subject: [PATCH 02/70] Added full text of BSD 2-clause --- .../refine/expr/functions/booleans/Xor.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/main/src/com/google/refine/expr/functions/booleans/Xor.java b/main/src/com/google/refine/expr/functions/booleans/Xor.java index 84ed87bd3..fa664f00b 100644 --- a/main/src/com/google/refine/expr/functions/booleans/Xor.java +++ b/main/src/com/google/refine/expr/functions/booleans/Xor.java @@ -1,8 +1,27 @@ /* - Implementing a naive XOR operation - Copyright 2013, Jesus M. Castagnetto - License: BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) - */ +Copyright (c) 2013, Jesus M. Castagnetto +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ package com.google.refine.expr.functions.booleans; From 71f319604892c60b721407fa0c44e73b5c00d33a Mon Sep 17 00:00:00 2001 From: "Jesus M. Castagnetto" Date: Fri, 1 Feb 2013 23:45:43 -0500 Subject: [PATCH 03/70] added comment on implementation --- main/src/com/google/refine/expr/functions/booleans/Xor.java | 1 + 1 file changed, 1 insertion(+) diff --git a/main/src/com/google/refine/expr/functions/booleans/Xor.java b/main/src/com/google/refine/expr/functions/booleans/Xor.java index fa664f00b..72fdb1e16 100644 --- a/main/src/com/google/refine/expr/functions/booleans/Xor.java +++ b/main/src/com/google/refine/expr/functions/booleans/Xor.java @@ -36,6 +36,7 @@ import com.google.refine.grel.Function; public class Xor implements Function { + /* naive implementation of the XOR operation */ @Override public Object call(Properties bindings, Object[] args) { if (args.length == 2 && From 02e8b28d26827634779f278b5c6701876048cdb0 Mon Sep 17 00:00:00 2001 From: "Jesus M. Castagnetto" Date: Sat, 2 Feb 2013 00:28:08 -0500 Subject: [PATCH 04/70] added tmp to ignored dirs --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e40d820b7..f7d771ec3 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ broker/core/module/MOD-INF/classes/ broker/core/WEB-INF/lib/ broker/core/data/ broker/core/test-output/ +tmp/ \ No newline at end of file From c0fb6be9fea77adc6ec200a8f82ec1f2d2177fe2 Mon Sep 17 00:00:00 2001 From: Tom Morris Date: Tue, 26 Mar 2013 18:07:38 -0400 Subject: [PATCH 05/70] Disable headless mode again since it only effects virtualbox (hopefully) --- build.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/build.xml b/build.xml index 9c0107a80..beb50c46a 100644 --- a/build.xml +++ b/build.xml @@ -241,8 +241,6 @@