Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Firebird Open Source J2ee connector - jdbc driver
   *
   * Distributable under LGPL license.
   * You may obtain a copy of the License at http://www.gnu.org/copyleft/lgpl.html
   *
   * This program is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * LGPL License for more details.
  *
  * This file was created by members of the firebird development team.
  * All individual contributions remain the Copyright (C) of those
  * individuals.  Contributors to this file are either listed here or
  * can be obtained from a CVS history command.
  *
  * All rights reserved.
  */
 
 package org.firebirdsql.jdbc.field;
 
 
This class represents LONG datatype and performs all necessary type conversions.

Author(s):
Roman Rokytskyy
Version:
1.0
 
 class FBLongField extends FBField {
     FBLongField(XSQLVAR fieldFieldDataProvider dataProviderint requiredType
         throws SQLException 
     {
         super(fielddataProviderrequiredType);
     }
 
     public byte getByte() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         Long value = new Long(.decodeLong(getFieldData()));
 
         // check if value is withing bounds
         if (value.longValue() >  ||
             value.longValue() < )
                 throw (SQLException)createException(
                     +" "+value).fillInStackTrace();
 
         return value.byteValue();
     }
     public short getShort() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         Long value = new Long(.decodeLong(getFieldData()));
 
         // check if value is withing bounds
         if (value.longValue() >  ||
             value.longValue() < )
                 throw (SQLException)createException(
                     +" "+value).fillInStackTrace();
 
         return value.shortValue();
     }
     public int getInt() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         Long value = new Long(.decodeLong(getFieldData()));
 
         // check if value is withing bounds
         if (value.longValue() >  ||
             value.longValue() < )
                 throw (SQLException)createException(
                     +" "+value).fillInStackTrace();
 
         return value.intValue();
     }
     public long getLong() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         return .decodeLong(getFieldData());
     }
     public float getFloat() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         return (float.decodeLong(getFieldData());
     }
     public double getDouble() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         return (double.decodeLong(getFieldData());
     }
     public BigDecimal getBigDecimal() throws SQLException {
         if (getFieldData()==nullreturn ;
 
         return BigDecimal.valueOf(.decodeLong(getFieldData()));
     }
    
    /*
    public Object getObject() throws SQLException {
        if (getFieldData()==null) return OBJECT_NULL_VALUE;
        return new Long(field.decodeLong(getFieldData()));
    }
    */
    
    public boolean getBoolean() throws SQLException {
        if (getFieldData()==nullreturn ;
        return .decodeLong(getFieldData()) == 1;
    }
    public String getString() throws SQLException {
        if (getFieldData()==nullreturn ;
        return String.valueOf(.decodeLong(getFieldData()));
    }
    //--- setXXX methods
    public void setString(String valuethrows SQLException {
        if (value == ) {
            setNull();
            return;
        }
        try {
            setLong(Long.parseLong(value));
        } catch(NumberFormatException nfex) {
            throw (SQLException)createException(
                +" "+value).fillInStackTrace();
        }
    }
    public void setShort(short valuethrows SQLException {
        setLong((long)value);
    }
    public void setBoolean(boolean valuethrows SQLException {
        setLong(value ? 1 : 0);
    }
    public void setFloat(float valuethrows SQLException {
        // check if value is within bounds
        if (value >  ||
            value < )
                throw (SQLException)createException(
                    +" "+value).fillInStackTrace();
        setLong((long)value);
    }
    public void setDouble(double valuethrows SQLException {
        // check if value is within bounds
        if (value >  ||
            value < )
                throw (SQLException)createException(
                    +" "+value).fillInStackTrace();
        setLong((long)value);
    }
    public void setLong(long valuethrows SQLException {
        setFieldData(.encodeLong(value));
    }
    public void setInteger(int valuethrows SQLException {
        setLong((long)value);
    }
    public void setByte(byte valuethrows SQLException {
        setLong((long)value);
    }
    public void setBigDecimal(BigDecimal valuethrows SQLException {
        if (value == ) {
            setNull();
            return;
        }
        // check if value is within bounds
        if (value.compareTo(BigDecimal.valueOf()) > 0 ||
            value.compareTo(BigDecimal.valueOf()) < 0)
                throw (SQLException)createException(
                    +" "+value).fillInStackTrace();
        setLong(value.longValue());
    }
New to GrepCode? Check out our FAQ X