001: /*
002: * Copyright 2001-2007 Geert Bevin <gbevin[remove] at uwyn dot com>
003: * Distributed under the terms of either:
004: * - the common development and distribution license (CDDL), v1.0; or
005: * - the GNU Lesser General Public License, v2.1 or later
006: * $Id: SqlArrays.java 3634 2007-01-08 21:42:24Z gbevin $
007: */
008: package com.uwyn.rife.database.types;
009:
010: import com.uwyn.rife.tools.StringUtils;
011:
012: public abstract class SqlArrays {
013: public static String convertArray(Object[] array) {
014: if (null == array) {
015: return SqlNull.NULL.toString();
016: } else {
017: StringBuilder result = new StringBuilder("{");
018:
019: for (Object array_field : array) {
020: if (null == array_field) {
021: result.append(SqlNull.NULL.toString());
022: } else if (array_field instanceof String) {
023: result
024: .append("'")
025: .append(
026: StringUtils
027: .encodeSql((String) array_field))
028: .append("'");
029: } else if (array_field instanceof StringBuilder) {
030: result.append("'").append(
031: StringUtils.encodeSql(array_field
032: .toString())).append("'");
033: } else if (array_field instanceof StringBuffer) {
034: result.append("'").append(
035: StringUtils.encodeSql(array_field
036: .toString())).append("'");
037: } else if (array_field instanceof Object[]) {
038: result.append(convertArray((Object[]) array_field));
039: } else {
040: result.append(array_field.toString());
041: }
042: result.append(",");
043: }
044:
045: if (result.length() > 1) {
046: result.setLength(result.length() - 1);
047: }
048:
049: result.append("}");
050:
051: return result.toString();
052: }
053: }
054:
055: public static String convertArray(boolean[] array) {
056: if (null == array) {
057: return SqlNull.NULL.toString();
058: } else {
059: return "{" + StringUtils.join(array, ",") + "}";
060: }
061: }
062:
063: public static String convertArray(byte[] array) {
064: if (null == array) {
065: return SqlNull.NULL.toString();
066: } else {
067: return "{" + StringUtils.join(array, ",") + "}";
068: }
069: }
070:
071: public static String convertArray(double[] array) {
072: if (null == array) {
073: return SqlNull.NULL.toString();
074: } else {
075: return "{" + StringUtils.join(array, ",") + "}";
076: }
077: }
078:
079: public static String convertArray(float[] array) {
080: if (null == array) {
081: return SqlNull.NULL.toString();
082: } else {
083: return "{" + StringUtils.join(array, ",") + "}";
084: }
085: }
086:
087: public static String convertArray(int[] array) {
088: if (null == array) {
089: return SqlNull.NULL.toString();
090: } else {
091: return "{" + StringUtils.join(array, ",") + "}";
092: }
093: }
094:
095: public static String convertArray(long[] array) {
096: if (null == array) {
097: return SqlNull.NULL.toString();
098: } else {
099: return "{" + StringUtils.join(array, ",") + "}";
100: }
101: }
102:
103: public static String convertArray(short[] array) {
104: if (null == array) {
105: return SqlNull.NULL.toString();
106: } else {
107: return "{" + StringUtils.join(array, ",") + "}";
108: }
109: }
110:
111: public static String convertArray(char[] array) {
112: if (null == array) {
113: return SqlNull.NULL.toString();
114: } else {
115: return "{" + StringUtils.join(array, ",", "'") + "}";
116: }
117: }
118: }
|