Package org.apache.ojb.broker.accesslayer

Examples of org.apache.ojb.broker.accesslayer.StatementManagerIF


    protected long buildNextSequence(ClassDescriptor cld, String sequenceName) throws Exception
    {
        ResultSet rs = null;
        PreparedStatement stmt = null;
        long result = -1;
        StatementManagerIF stmtMan = getBrokerForClass().serviceStatementManager();
        try
        {
            stmt = stmtMan.getPreparedStatement(cld, getPlatform().nextSequenceQuery(sequenceName) ,Query.NOT_SCROLLABLE, 1, false);
            rs = stmt.executeQuery();
            rs.next();
            result = rs.getLong(1);
        }
        finally
        {
            stmtMan.closeResources(stmt, rs);
        }
        return result;
    }
View Full Code Here


    }

    protected void createSequence(ClassDescriptor cld, String sequenceName) throws Exception
    {
        Statement stmt = null;
        StatementManagerIF stmtMan = getBrokerForClass().serviceStatementManager();
// arminw: never try to remove existing sequences, because this may lead in unexpected behaviour
// if the reason for the create call isn't a missing sequence (e.g. network problems) 
//        try
//        {
//            stmt = stmtMan.getGenericStatement(cld, Query.NOT_SCROLLABLE);
//            stmt.execute(getPlatform().dropSequenceQuery(sequenceName));
//        }
//        catch (Exception ignore)
//        {
//            // ignore it
//        }
//        finally
//        {
//            try
//            {
//                stmtMan.closeResources(stmt, null);
//            }
//            catch (Exception ignore)
//            {
//                // ignore it
//            }
//        }

        try
        {
            stmt = stmtMan.getGenericStatement(cld, Query.NOT_SCROLLABLE);
            stmt.execute(getPlatform().createSequenceQuery(sequenceName, getConfigurationProperties()));
        }
        finally
        {
            try
            {
                stmtMan.closeResources(stmt, null);
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
View Full Code Here

        String column = field.getColumnName();
        long result = 0;
        ResultSet rs = null;
        Statement stmt = null;
        StatementManagerIF sm = brokerForClass.serviceStatementManager();
        String table = cldForOriginalOrExtent.getFullTableName();
        // String column = cld.getFieldDescriptorByName(fieldName).getColumnName();
        String sql = SM_SELECT_MAX + column + SM_FROM + table;
        try
        {
            //lookup max id for the current class
            stmt = sm.getGenericStatement(cldForOriginalOrExtent, Query.NOT_SCROLLABLE);
            rs = stmt.executeQuery(sql);
            rs.next();
            result = rs.getLong(1);
        }
        catch (Exception e)
        {
            log.warn("Cannot lookup max value from table " + table + " for column " + column +
                    ", PB was " + brokerForClass + ", using jdbc-descriptor " +
                    brokerForClass.serviceConnectionManager().getConnectionDescriptor(), e);
        }
        finally
        {
            try
            {
                sm.closeResources(stmt, rs);
            }
            catch (Exception ignore)
            {
                // ignore it
           }
View Full Code Here

        }
        else
        {
            pkValues = getKeyValues(cld, oid);
        }
        StatementManagerIF sm = m_broker.serviceStatementManager();
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try
        {
            stmt = sm.getPreparedStatement(cld, sql, false, 1, false);
            sm.bindValues(stmt, pkValues, 1);
            rs = stmt.executeQuery();
            result = rs.next();
        }
        catch(SQLException e)
        {
            throw ExceptionHelper.generateException("[BrokerHelper#doesExist] Can't check if specified" +
                    " object is already persisted", e, sql, cld, pkValues, null, obj);
        }
        finally
        {
            sm.closeResources(stmt, rs);
        }

        return result;
    }
View Full Code Here

        if(sql == null)
        {
            sql = new SqlExistStatement(cld, LoggerFactory.getDefaultLogger()).getStatement();
            sqlSelectMap.put(cld, sql);
        }
        StatementManagerIF sm = m_broker.serviceStatementManager();
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try
        {
            stmt = sm.getPreparedStatement(cld, sql, false);
            sm.bindSelect(stmt, oid, cld);
            rs = stmt.executeQuery();
            result = rs.next();
        }
        catch(SQLException e)
        {
            throw new PersistenceBrokerSQLException("Exist check failed for identity " + oid
                    + ", sql was " + sql, e);
        }
        finally
        {
            sm.closeResources(stmt, rs);
        }

        return result;
    }
View Full Code Here

    protected long buildNextSequence(ClassDescriptor cld, String sequenceName) throws Exception
    {
        ResultSet rs = null;
        Statement stmt = null;
        long result = -1;
        StatementManagerIF stmtMan = getBrokerForClass().serviceStatementManager();
        try
        {
            stmt = stmtMan.getGenericStatement(cld, Query.NOT_SCROLLABLE);
            rs = stmt.executeQuery(getPlatform().nextSequenceQuery(sequenceName));
            rs.next();
            result = rs.getLong(1);
        }
        finally
        {
            stmtMan.closeResources(stmt, rs);
        }
        return result;
    }
View Full Code Here

    }

    protected void createSequence(ClassDescriptor cld, String sequenceName) throws Exception
    {
        Statement stmt = null;
        StatementManagerIF stmtMan = getBrokerForClass().serviceStatementManager();
// arminw: never try to remove existing sequences, because this may lead in unexpected behaviour
// if the reason for the create call isn't a missing sequence (e.g. network problems) 
//        try
//        {
//            stmt = stmtMan.getGenericStatement(cld, Query.NOT_SCROLLABLE);
//            stmt.execute(getPlatform().dropSequenceQuery(sequenceName));
//        }
//        catch (Exception ignore)
//        {
//            // ignore it
//        }
//        finally
//        {
//            try
//            {
//                stmtMan.closeResources(stmt, null);
//            }
//            catch (Exception ignore)
//            {
//                // ignore it
//            }
//        }

        try
        {
            stmt = stmtMan.getGenericStatement(cld, Query.NOT_SCROLLABLE);
            stmt.execute(getPlatform().createSequenceQuery(sequenceName));
        }
        finally
        {
            try
            {
                stmtMan.closeResources(stmt, null);
            }
            catch (Exception ignore)
            {
                // ignore it
            }
View Full Code Here

        if(sql == null)
        {
            sql = new SqlExistStatement(cld, LoggerFactory.getDefaultLogger()).getStatement();
            sqlSelectMap.put(cld, sql);
        }
        StatementManagerIF sm = m_broker.serviceStatementManager();
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try
        {
            stmt = sm.getPreparedStatement(cld, sql, false);
            sm.bindSelect(stmt, oid, cld);
            rs = stmt.executeQuery();
            result = rs.next();
        }
        catch(SQLException e)
        {
            LoggerFactory.getDefaultLogger().error("[BrokerHelper#doesExist] Can't check for existance", e);
            throw new PersistenceBrokerSQLException("Exist check failed for identity " + oid
                    + ", sql was " + sql, e);
        }
        finally
        {
            sm.closeResources(stmt, rs);
        }

        return result;
    }
View Full Code Here

        if(sql == null)
        {
            sql = new SqlExistStatement(cld, LoggerFactory.getDefaultLogger()).getStatement();
            sqlSelectMap.put(cld, sql);
        }
        StatementManagerIF sm = m_broker.serviceStatementManager();
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try
        {
            stmt = sm.getPreparedStatement(cld, sql, false);
            sm.bindSelect(stmt, oid, cld);
            rs = stmt.executeQuery();
            result = rs.next();
        }
        catch(SQLException e)
        {
            throw new PersistenceBrokerSQLException("Exist check failed for identity " + oid
                    + ", sql was " + sql, e);
        }
        finally
        {
            sm.closeResources(stmt, rs);
        }

        return result;
    }
View Full Code Here

        if(sql == null)
        {
            sql = new SqlExistStatement(cld, LoggerFactory.getDefaultLogger()).getStatement();
            sqlSelectMap.put(cld, sql);
        }
        StatementManagerIF sm = m_broker.serviceStatementManager();
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try
        {
            stmt = sm.getPreparedStatement(cld, sql, false);
            sm.bindSelect(stmt, oid, cld);
            rs = stmt.executeQuery();
            result = rs.next();
        }
        catch(SQLException e)
        {
            LoggerFactory.getDefaultLogger().error("[BrokerHelper#doesExist] Can't check for existance", e);
            throw new PersistenceBrokerSQLException("Exist check failed for identity " + oid
                    + ", sql was " + sql, e);
        }
        finally
        {
            sm.closeResources(stmt, rs);
        }

        return result;
    }
View Full Code Here

TOP

Related Classes of org.apache.ojb.broker.accesslayer.StatementManagerIF

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.