001: /*
002: * Created on Jun 16, 2004
003: */
004: package net.sourceforge.orbroker;
005:
006: import java.sql.ParameterMetaData;
007: import java.sql.ResultSetMetaData;
008: import java.sql.SQLException;
009:
010: /**
011: * @author Nils Kilden-Pedersen
012: */
013: final class ResultParameterMetaData implements ResultSetMetaData {
014:
015: private final ParameterMetaData metaData;
016: private final String[] parameterNames;
017:
018: /**
019: * Constructor.
020: * @param metaData
021: * @param parmNames
022: */
023: public ResultParameterMetaData(ParameterMetaData metaData,
024: String[] parmNames) {
025: this .metaData = metaData;
026: this .parameterNames = parmNames;
027: }
028:
029: /**
030: * @see java.sql.ResultSetMetaData#getColumnCount()
031: */
032: public int getColumnCount() throws SQLException {
033: return this .metaData.getParameterCount();
034: }
035:
036: /**
037: * @see java.sql.ResultSetMetaData#getColumnDisplaySize(int)
038: */
039: public int getColumnDisplaySize(int arg0) throws SQLException {
040: throw new UnsupportedOperationException();
041: }
042:
043: /**
044: * @see java.sql.ResultSetMetaData#getColumnType(int)
045: */
046: public int getColumnType(int columnIndex) throws SQLException {
047: return this .metaData.getParameterType(columnIndex);
048: }
049:
050: /**
051: * @see java.sql.ResultSetMetaData#getPrecision(int)
052: */
053: public int getPrecision(int columnIndex) throws SQLException {
054: return this .metaData.getPrecision(columnIndex);
055: }
056:
057: /**
058: * @see java.sql.ResultSetMetaData#getScale(int)
059: */
060: public int getScale(int columnIndex) throws SQLException {
061: return this .metaData.getScale(columnIndex);
062: }
063:
064: /**
065: * @see java.sql.ResultSetMetaData#isNullable(int)
066: */
067: public int isNullable(int columnIndex) throws SQLException {
068: return this .metaData.isNullable(columnIndex);
069: }
070:
071: /**
072: * @see java.sql.ResultSetMetaData#isAutoIncrement(int)
073: */
074: public boolean isAutoIncrement(int arg0) throws SQLException {
075: throw new UnsupportedOperationException();
076: }
077:
078: /**
079: * @see java.sql.ResultSetMetaData#isCaseSensitive(int)
080: */
081: public boolean isCaseSensitive(int arg0) throws SQLException {
082: throw new UnsupportedOperationException();
083: }
084:
085: /**
086: * @see java.sql.ResultSetMetaData#isCurrency(int)
087: */
088: public boolean isCurrency(int arg0) throws SQLException {
089: throw new UnsupportedOperationException();
090: }
091:
092: /**
093: * @see java.sql.ResultSetMetaData#isDefinitelyWritable(int)
094: */
095: public boolean isDefinitelyWritable(int arg0) throws SQLException {
096: throw new UnsupportedOperationException();
097: }
098:
099: /**
100: * @see java.sql.ResultSetMetaData#isReadOnly(int)
101: */
102: public boolean isReadOnly(int columnIndex) throws SQLException {
103: return true;
104: }
105:
106: /**
107: * @see java.sql.ResultSetMetaData#isSearchable(int)
108: */
109: public boolean isSearchable(int columnIndex) throws SQLException {
110: return false;
111: }
112:
113: /**
114: * @see java.sql.ResultSetMetaData#isSigned(int)
115: */
116: public boolean isSigned(int columnIndex) throws SQLException {
117: return this .metaData.isSigned(columnIndex);
118: }
119:
120: /**
121: * @see java.sql.ResultSetMetaData#isWritable(int)
122: */
123: public boolean isWritable(int columnIndex) throws SQLException {
124: return false;
125: }
126:
127: /**
128: * @see java.sql.ResultSetMetaData#getCatalogName(int)
129: */
130: public String getCatalogName(int columnIndex) throws SQLException {
131: return "[unknown]";
132: }
133:
134: /**
135: * @see java.sql.ResultSetMetaData#getColumnClassName(int)
136: */
137: public String getColumnClassName(int columnIndex)
138: throws SQLException {
139: return this .metaData.getParameterClassName(columnIndex);
140: }
141:
142: /**
143: * @see java.sql.ResultSetMetaData#getColumnLabel(int)
144: */
145: public String getColumnLabel(int columnIndex) throws SQLException {
146: return getColumnName(columnIndex);
147: }
148:
149: /**
150: * @see java.sql.ResultSetMetaData#getColumnName(int)
151: */
152: public String getColumnName(int columnIndex) throws SQLException {
153: return this .parameterNames[columnIndex - 1];
154: }
155:
156: /**
157: * @see java.sql.ResultSetMetaData#getColumnTypeName(int)
158: */
159: public String getColumnTypeName(int columnIndex)
160: throws SQLException {
161: return this .metaData.getParameterTypeName(columnIndex);
162: }
163:
164: /**
165: * @see java.sql.ResultSetMetaData#getSchemaName(int)
166: */
167: public String getSchemaName(int arg0) throws SQLException {
168: throw new UnsupportedOperationException();
169: }
170:
171: /**
172: * @see java.sql.ResultSetMetaData#getTableName(int)
173: */
174: public String getTableName(int arg0) throws SQLException {
175: throw new UnsupportedOperationException();
176: }
177:
178: }
|