summaryrefslogtreecommitdiffstats
path: root/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings
diff options
context:
space:
mode:
Diffstat (limited to 'das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings')
-rw-r--r--das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java43
-rw-r--r--das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java77
-rw-r--r--das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringObfuscationConverter.java65
-rw-r--r--das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java39
-rw-r--r--das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java37
5 files changed, 261 insertions, 0 deletions
diff --git a/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java
new file mode 100644
index 0000000000..282aeaeb36
--- /dev/null
+++ b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.das.rdb.test.mappings;
+
+import org.apache.tuscany.das.rdb.Converter;
+
+public class IntegerToBooleanConverter implements Converter {
+
+ public IntegerToBooleanConverter() {
+ super();
+ }
+
+ public Object getPropertyValue(Object columnData) {
+ Integer value = (Integer) columnData;
+ return value.intValue() == 0 ? Boolean.FALSE : Boolean.TRUE;
+ }
+
+ public Object getColumnValue(Object propertyData) {
+ Boolean value = (Boolean) propertyData;
+ if (value.booleanValue()) {
+ return new Integer(1);
+ }
+ return new Integer(0);
+ }
+
+
+}
diff --git a/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java
new file mode 100644
index 0000000000..df9d2978eb
--- /dev/null
+++ b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java
@@ -0,0 +1,77 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.das.rdb.test.mappings;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import org.apache.tuscany.das.rdb.Converter;
+
+public class SillyDateStringConverter implements Converter {
+
+ private static DateFormat myformat = new SimpleDateFormat("yyyy.MM.dd");
+
+ private static Date kbday;
+
+ private static Date tbday;
+
+ public SillyDateStringConverter() {
+ super();
+ }
+
+ static {
+ try {
+ kbday = myformat.parse("1957.09.27");
+ tbday = myformat.parse("1966.12.20");
+ } catch (ParseException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public Object getPropertyValue(Object columnData) {
+
+ if (columnData.equals("Williams")) {
+ return kbday;
+ }
+
+ if (columnData.equals("Pavick")) {
+ return tbday;
+ }
+
+ throw new IllegalArgumentException();
+
+ }
+
+ public Object getColumnValue(Object propertyData) {
+
+ if (propertyData.equals(kbday)) {
+ return "Williams";
+ }
+
+ if (propertyData.equals(tbday)) {
+ return "Pavick";
+ }
+
+ throw new IllegalArgumentException();
+
+ }
+
+}
diff --git a/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringObfuscationConverter.java b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringObfuscationConverter.java
new file mode 100644
index 0000000000..efea61c7de
--- /dev/null
+++ b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringObfuscationConverter.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.das.rdb.test.mappings;
+
+import java.io.UnsupportedEncodingException;
+
+import org.apache.tuscany.das.rdb.Converter;
+
+public class StringObfuscationConverter implements Converter {
+
+ public StringObfuscationConverter() {
+ super();
+ }
+
+ public Object getPropertyValue(Object columnData) {
+ return toRot13((String) columnData);
+ }
+
+ public Object getColumnValue(Object propertyData) {
+ return toRot13((String) propertyData);
+ }
+
+ // Utilities
+
+ // A simple, reversible, obfuscation algorithm using a ROT13 implementation
+ private String toRot13(String original) {
+
+ int abyte = 0;
+ byte[] buffer = {};
+ try {
+ buffer = original.getBytes("ISO-8859-1");
+ } catch (UnsupportedEncodingException e) {
+ throw new Error(e);
+ }
+
+ for (int i = 0; i < buffer.length; i++) {
+ abyte = buffer[i];
+ int cap = abyte & 32;
+ abyte &= ~cap;
+ abyte = ((abyte >= 'A') && (abyte <= 'Z') ? ((abyte - 'A' + 13) % 26 + 'A') : abyte) | cap;
+ buffer[i] = (byte) abyte;
+ }
+ try {
+ return new String(buffer, "ISO-8859-1");
+ } catch (UnsupportedEncodingException e) {
+ throw new Error(e);
+ }
+ }
+}
diff --git a/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java
new file mode 100644
index 0000000000..2be6522fcc
--- /dev/null
+++ b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java
@@ -0,0 +1,39 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.das.rdb.test.mappings;
+
+import org.apache.tuscany.das.rdb.Converter;
+
+public class StringToIntegerConverter implements Converter {
+
+ public StringToIntegerConverter() {
+ super();
+ }
+
+ public Object getPropertyValue(Object columnData) {
+ // System.out.println("Converting object.. " + columnData);
+
+ return new Integer(columnData.toString());
+ }
+
+ public Object getColumnValue(Object columnData) {
+ return columnData.toString();
+ }
+
+}
diff --git a/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java
new file mode 100644
index 0000000000..a15cef37e6
--- /dev/null
+++ b/das-java/tags/1.0-incubating-beta2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.das.rdb.test.mappings;
+
+import org.apache.tuscany.das.rdb.Converter;
+
+public class StringToLongConverter implements Converter {
+
+ public StringToLongConverter() {
+ super();
+ }
+
+ public Object getPropertyValue(Object columnData) {
+ return new Long(columnData.toString());
+ }
+
+ public Object getColumnValue(Object columnData) {
+ return columnData.toString();
+ }
+
+}