Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2014-2015 the original author or authors.
   *
   * Licensed 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.dbflute.s2dao.valuetype.basic;
 
 import java.sql.Blob;
 import java.sql.Types;
 

Author(s):
modified by jflute (originated in Seasar2)
 
 public class BinaryType extends TnAbstractValueType {
 
     public BinaryType() {
         super(.);
     }
 
     public Object getValue(ResultSet rsint indexthrows SQLException {
         try {
             return toByteArray(rs.getBlob(index));
         } catch (SQLException ignored) {
             return rs.getBytes(index);
         }
     }
 
     public Object getValue(ResultSet rsString columnNamethrows SQLException {
         try {
             return toByteArray(rs.getBlob(columnName));
         } catch (SQLException ignored) {
             return rs.getBytes(columnName);
         }
     }
 
     public Object getValue(CallableStatement csint indexthrows SQLException {
         try {
             return toByteArray(cs.getBlob(index));
         } catch (SQLException ignored) {
             return cs.getBytes(index);
         }
     }
 
     public Object getValue(CallableStatement csString parameterNamethrows SQLException {
         try {
             return toByteArray(cs.getBlob(parameterName));
         } catch (SQLException ignored) {
             return cs.getBytes(parameterName);
         }
     }
 
     private byte[] toByteArray(Blob blobthrows SQLException {
         if (blob == null) {
             return null;
         }
         long l = blob.length();
         if (. < l) {
             String msg = "The length of the BLOB value should be less (equal) than integer:";
             msg = msg + " length=" + l + " value=" + blob;
             throw new ArrayIndexOutOfBoundsException(msg);
         }
         return blob.getBytes(1, (intl);
     }
 
     public void bindValue(Connection connPreparedStatement psint indexObject valuethrows SQLException {
         if (value == null) {
             setNull(psindex);
         } else if (value instanceof byte[]) {
             byte[] ba = (byte[]) value;
             InputStream in = new ByteArrayInputStream(ba);
             ps.setBinaryStream(indexinba.length);
         } else {
             ps.setObject(indexvalue);
         }
     }
 
     public void bindValue(Connection connCallableStatement csString parameterNameObject valuethrows SQLException {
         if (value == null) {
             setNull(csparameterName);
         } else if (value instanceof byte[]) {
            byte[] ba = (byte[]) value;
            InputStream in = new ByteArrayInputStream(ba);
            cs.setBinaryStream(parameterNameinba.length);
        } else {
            cs.setObject(parameterNamevalue);
        }
    }
New to GrepCode? Check out our FAQ X