Class SectionManager

java.lang.Object
org.apache.derby.client.am.SectionManager

public class SectionManager extends Object
  • Field Details

    • agent_

      private Agent agent_
    • freeSectionsNonHold_

      private final Stack<Section> freeSectionsNonHold_
    • freeSectionsHold_

      private final Stack<Section> freeSectionsHold_
    • nextAvailableSectionNumber_

      private int nextAvailableSectionNumber_
    • holdPKGNAMCBytes

      byte[] holdPKGNAMCBytes
    • noHoldPKGNAMCBytes

      byte[] noHoldPKGNAMCBytes
    • packageNameWithHold__

      private static final String packageNameWithHold__
      See Also:
    • packageNameWithNoHold__

      private static final String packageNameWithNoHold__
      See Also:
    • cursorNamePrefixWithHold__

      private static final String cursorNamePrefixWithHold__
      See Also:
    • cursorNamePrefixWithNoHold__

      private static final String cursorNamePrefixWithNoHold__
      See Also:
    • positionedUpdateCursorNameToQuerySection_

      private final Hashtable<String,Section> positionedUpdateCursorNameToQuerySection_
    • positionedUpdateCursorNameToResultSet_

      private final Hashtable<String,WeakReference<ClientResultSet>> positionedUpdateCursorNameToResultSet_
    • maxNumSections_

      private final int maxNumSections_
      See Also:
  • Constructor Details

    • SectionManager

      public SectionManager(Agent agent)
  • Method Details

    • setPKGNAMCBytes

      void setPKGNAMCBytes(byte[] b, int resultSetHoldability)
      Store the Packagename and consistency token information This is called from Section.setPKGNAMCBytes
      Parameters:
      b - bytearray that has the PKGNAMC information to be stored
      resultSetHoldability - depending on the holdability store it in the correct byte array packagename and consistency token information for when holdability is set to HOLD_CURSORS_OVER_COMMIT is stored in holdPKGNAMCBytes and in noHoldPKGNAMCBytes when holdability is set to CLOSE_CURSORS_AT_COMMIT
    • getDynamicSection

      Section getDynamicSection(int resultSetHoldability) throws SqlException
      Throws:
      SqlException
    • getSection

      private Section getSection(Stack freeSections, String packageName, String cursorNamePrefix, int resultSetHoldability) throws SqlException
      Throws:
      SqlException
    • freeSection

      void freeSection(Section section, int resultSetHoldability)
    • getPositionedUpdateSection

      Section getPositionedUpdateSection(Section querySection) throws SqlException
      Throws:
      SqlException
    • getPositionedUpdateSection

      Section getPositionedUpdateSection(String cursorName, boolean useExecuteImmediateSection) throws SqlException
      Throws:
      SqlException
    • mapCursorNameToQuerySection

      void mapCursorNameToQuerySection(String cursorName, Section section)
    • mapCursorNameToResultSet

      void mapCursorNameToResultSet(String cursorName, ClientResultSet resultSet)
    • getPositionedUpdateResultSet

      ClientResultSet getPositionedUpdateResultSet(String cursorName) throws SqlException
      Throws:
      SqlException
    • removeCursorNameToResultSetMapping

      void removeCursorNameToResultSetMapping(String clientCursorName, String serverCursorName)
    • removeCursorNameToQuerySectionMapping

      void removeCursorNameToQuerySectionMapping(String clientCursorName, String serverCursorName)