Example usage for org.hibernate.dialect Dialect getCreateSequenceStrings

List of usage examples for org.hibernate.dialect Dialect getCreateSequenceStrings

Introduction

In this page you can find the example usage for org.hibernate.dialect Dialect getCreateSequenceStrings.

Prototype

public String[] getCreateSequenceStrings(String sequenceName, int initialValue, int incrementSize)
        throws MappingException 

Source Link

Document

An optional multi-line form for databases which #supportsPooledSequences() .

Usage

From source file:org.jboss.pnc.datastore.repositories.DefaultSequenceHandlerRepository.java

License:Open Source License

@Override
public void createSequence(final String sequenceName) {

    if (sequenceExists(sequenceName)) {
        return;/*from  w  ww. j  a  v a 2s  . c om*/
    }
    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {
            DialectResolver dialectResolver = new StandardDialectResolver();
            Dialect dialect = dialectResolver.resolveDialect(getResolutionInfo(connection));
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            try {
                preparedStatement = connection
                        .prepareStatement(dialect.getCreateSequenceStrings(sequenceName, 1, 1)[0]);
                preparedStatement.execute();
            } catch (SQLException e) {
                throw e;
            } finally {
                if (preparedStatement != null) {
                    preparedStatement.close();
                }
                if (resultSet != null) {
                    resultSet.close();
                }
            }

        }
    };

    Session session = (Session) entityManager.getDelegate();
    SessionFactory sessionFactory = session.getSessionFactory();
    sessionFactory.getCurrentSession().doWork(work);
}

From source file:org.jboss.pnc.datastore.repositories.SequenceHandlerRepository.java

License:Open Source License

public void createSequence(final String sequenceName) {

    if (sequenceExists(sequenceName)) {
        return;/*w  w  w.  ja v  a2  s.  c o m*/
    }
    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {
            DialectResolver dialectResolver = new StandardDialectResolver();
            Dialect dialect = dialectResolver.resolveDialect(connection.getMetaData());
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            try {
                preparedStatement = connection
                        .prepareStatement(dialect.getCreateSequenceStrings(sequenceName, 1, 1)[0]);
                preparedStatement.execute();
            } catch (SQLException e) {
                throw e;
            } finally {
                if (preparedStatement != null) {
                    preparedStatement.close();
                }
                if (resultSet != null) {
                    resultSet.close();
                }
            }

        }
    };

    Session session = (Session) entityManager.getDelegate();
    SessionFactory sessionFactory = session.getSessionFactory();
    sessionFactory.getCurrentSession().doWork(work);
}