Class JDBCSequentialFileFactory

  • All Implemented Interfaces:
    org.apache.activemq.artemis.core.io.SequentialFileFactory, org.apache.activemq.artemis.core.server.ActiveMQComponent

    public class JDBCSequentialFileFactory
    extends java.lang.Object
    implements org.apache.activemq.artemis.core.io.SequentialFileFactory, org.apache.activemq.artemis.core.server.ActiveMQComponent
    • Constructor Detail

      • JDBCSequentialFileFactory

        public JDBCSequentialFileFactory​(JDBCConnectionProvider connectionProvider,
                                         SQLProvider sqlProvider,
                                         java.util.concurrent.Executor executor,
                                         org.apache.activemq.artemis.core.io.IOCriticalErrorListener criticalErrorListener)
                                  throws java.lang.Exception
        Throws:
        java.lang.Exception
    • Method Detail

      • setDatasync

        public org.apache.activemq.artemis.core.io.SequentialFileFactory setDatasync​(boolean enabled)
        Specified by:
        setDatasync in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • isDatasync

        public boolean isDatasync()
        Specified by:
        isDatasync in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • getBufferSize

        public long getBufferSize()
        Specified by:
        getBufferSize in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • start

        public void start()
        Specified by:
        start in interface org.apache.activemq.artemis.core.server.ActiveMQComponent
        Specified by:
        start in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • stop

        public void stop()
        Specified by:
        stop in interface org.apache.activemq.artemis.core.server.ActiveMQComponent
        Specified by:
        stop in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • createSequentialFile

        public org.apache.activemq.artemis.core.io.SequentialFile createSequentialFile​(java.lang.String fileName)
        Specified by:
        createSequentialFile in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • sequentialFileClosed

        public void sequentialFileClosed​(org.apache.activemq.artemis.core.io.SequentialFile file)
      • getNumberOfOpenFiles

        public int getNumberOfOpenFiles()
      • getMaxIO

        public int getMaxIO()
        Specified by:
        getMaxIO in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • listFiles

        public java.util.List<java.lang.String> listFiles​(java.lang.String extension)
                                                   throws java.lang.Exception
        Specified by:
        listFiles in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
        Throws:
        java.lang.Exception
      • isSupportsCallbacks

        public boolean isSupportsCallbacks()
        Specified by:
        isSupportsCallbacks in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • onIOError

        public void onIOError​(java.lang.Exception exception,
                              java.lang.String message,
                              org.apache.activemq.artemis.core.io.SequentialFile file)
        Specified by:
        onIOError in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • allocateDirectBuffer

        public java.nio.ByteBuffer allocateDirectBuffer​(int size)
        Specified by:
        allocateDirectBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • releaseDirectBuffer

        public void releaseDirectBuffer​(java.nio.ByteBuffer buffer)
        Specified by:
        releaseDirectBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • newBuffer

        public java.nio.ByteBuffer newBuffer​(int size)
        Specified by:
        newBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • clearBuffer

        public void clearBuffer​(java.nio.ByteBuffer buffer)
        Specified by:
        clearBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • wrapBuffer

        public java.nio.ByteBuffer wrapBuffer​(byte[] bytes)
        Specified by:
        wrapBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • getAlignment

        public int getAlignment()
        Specified by:
        getAlignment in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • setAlignment

        public JDBCSequentialFileFactory setAlignment​(int alignment)
        Specified by:
        setAlignment in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • calculateBlockSize

        public int calculateBlockSize​(int bytes)
        Specified by:
        calculateBlockSize in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • deactivateBuffer

        public void deactivateBuffer()
        Specified by:
        deactivateBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • releaseBuffer

        public void releaseBuffer​(java.nio.ByteBuffer buffer)
        Specified by:
        releaseBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • activateBuffer

        public void activateBuffer​(org.apache.activemq.artemis.core.io.SequentialFile file)
        Specified by:
        activateBuffer in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • getDirectory

        public java.io.File getDirectory()
        Specified by:
        getDirectory in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • isStarted

        public boolean isStarted()
        Specified by:
        isStarted in interface org.apache.activemq.artemis.core.server.ActiveMQComponent
      • createDirs

        public void createDirs()
                        throws java.lang.Exception
        Specified by:
        createDirs in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
        Throws:
        java.lang.Exception
      • flush

        public void flush()
        Specified by:
        flush in interface org.apache.activemq.artemis.core.io.SequentialFileFactory
      • destroy

        public void destroy()
                     throws java.sql.SQLException
        Throws:
        java.sql.SQLException