[Seasar-user:2838] Re: S2Dao にて Stream を扱いたい
上原 慶三
keizou
2005年 11月 16日 (水) 06:26:11 JST
上原です。返事が遅くなってしまい申し訳ありません。
NAKAMURA Manabu wrote:
> こんにちは、中村です。
>
> どうも外部からラップして等で対応できなさそうなので、
>
> ValueTypes.getValueType(Class)
> を以下の様に変更して頂くことは可能でしょうか?
>
> public static ValueType getValueType(Class clazz) {
> for (Class c = clazz; c != null; c = c.getSuperclass()) {
> ValueType valueType = getValueType0(c);
> if (valueType != null) return valueType;
> }
> return OBJECT;
> }
>
> こうしても既存の動作に影響は無いと思いますし、
> 独自のValueTypeを追加したい場合に楽になると思うのですが。
>
> 如何でしょうか。
> ご検討の程、宜しくお願い致します。
S2Conteinerの方はコミッタではないのでなんともいえないのですが
S2Daoのほうで対応してみましたのでs2ao/brances/s2dao1-1
を試してみてもらえないでしょうか。
s2daoがわからの要望としては、ValueTypesを修正するのと同時に、
BasicHandlerで
---
C:/work/seasar2/modules/s2-extension/src/main/java/org/seasar/extension/jdbc/impl/BasicHandler.java
(revision 118)
+++
C:/work/seasar2/modules/s2-extension/src/main/java/org/seasar/extension/jdbc/impl/BasicHandler.java
(working copy)
@@ -103,7 +103,7 @@
return;
}
for (int i = 0; i < args.length; ++i) {
- ValueType valueType = ValueTypes.getValueType(argTypes[i]);
+ ValueType valueType = getValueType(argTypes[i]);
try {
valueType.bindValue(ps, i + 1, args[i]);
} catch (SQLException ex) {
@@ -111,7 +111,11 @@
}
}
}
-
+
+ protected ValueType getValueType(Class argType){
+ return ValueTypes.getValueType(argType);
+ }
+
protected Class[] getArgTypes(Object[] args) {
if (args == null) {
return null;
見たいなかんじでクラスから、ValueTypeの変換を変更できるように
してもらえればうれしいです。
もしくは、static関数ではなくValueTypeFactoryみたいなものを作って
setできるようにしてもいいと思いますが。
--
---
上原 慶三<[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内