001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017:
018: package java.sql;
019:
020: import java.util.Map;
021:
022: /**
023: * A Java representation of the SQL ARRAY type.
024: */
025: public interface Array {
026:
027: /**
028: * Retrieves the contents of the SQL ARRAY value as a Java array object.
029: *
030: * @return A Java array containing the elements of this Array
031: * @throws SQLException
032: */
033: public Object getArray() throws SQLException;
034:
035: /**
036: * Returns part of the SQL ARRAY associated with this Array, starting at a
037: * particular index and comprising up to count successive elements of the
038: * SQL array.
039: *
040: * @param index
041: * @param count
042: * @return A Java array containing the subportion of elements of this Array
043: * @throws SQLException
044: */
045: public Object getArray(long index, int count) throws SQLException;
046:
047: /**
048: * Returns part of the SQL ARRAY associated with this Array, starting at a
049: * particular index and comprising up to count successive elements of the
050: * SQL array.
051: *
052: * @param index
053: * @param count
054: * @param map
055: * @return A Java array containing the subportion of elements of this Array
056: * @throws SQLException
057: */
058: public Object getArray(long index, int count,
059: Map<String, Class<?>> map) throws SQLException;
060:
061: /**
062: * Returns the SQL ARRAY associated with this Array.
063: *
064: * @param map
065: * @return A Java array containing the elements of this Array
066: * @throws SQLException
067: */
068: public Object getArray(Map<String, Class<?>> map)
069: throws SQLException;
070:
071: /**
072: * Returns the JDBC type of the entries in this Array's associated array.
073: *
074: * @return An integer constant from the java.sql.Types class
075: * @throws SQLException
076: */
077: public int getBaseType() throws SQLException;
078:
079: /**
080: * Returns the SQL type name of the entries in the array associated with
081: * this Array.
082: *
083: * @return The database specific name or a fully-qualified SQL type name.
084: * @throws SQLException
085: */
086: public String getBaseTypeName() throws SQLException;
087:
088: /**
089: * Returns a ResultSet object which holds the entries of the SQL ARRAY
090: * associated with this Array.
091: *
092: * @return the ResultSet
093: * @throws SQLException
094: */
095: public ResultSet getResultSet() throws SQLException;
096:
097: /**
098: * Returns a ResultSet object that holds the entries of a subarray,
099: * beginning at a particular index and comprising up to count successive
100: * entries.
101: *
102: * @param index
103: * @param count
104: * @return the ResultSet
105: * @throws SQLException
106: */
107: public ResultSet getResultSet(long index, int count)
108: throws SQLException;
109:
110: /**
111: * Returns a ResultSet object that holds the entries of a subarray,
112: * beginning at a particular index and comprising up to count successive
113: * entries.
114: *
115: * @param index
116: * @param count
117: * @param map
118: * @return the ResultSet
119: * @throws SQLException
120: */
121: public ResultSet getResultSet(long index, int count,
122: Map<String, Class<?>> map) throws SQLException;
123:
124: /**
125: * Returns a ResultSet object which holds the entries of the SQL ARRAY
126: * associated with this Array.
127: *
128: * @param map
129: * @return the ResultSet
130: * @throws SQLException
131: */
132: public ResultSet getResultSet(Map<String, Class<?>> map)
133: throws SQLException;
134:
135: }
|