Uploaded image for project: 'Commons Sandbox'
  1. Commons Sandbox
  2. SANDBOX-125

[id] New TimeBasedAlphanumericIdentifierGenerator

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • None
    • Id
    • None
    • Operating System: All
      Platform: All

    • 36683

    Description

      Javadoc extract:
      ================

      TimeBasedAlphanumericIdentifierGenerator</code> is an Identifier Generator that
      generates an alphanumeric identifier in base 36 as a String object from the
      current UTC time and an internal counter.

      The generator guarantees that all generated ids have an increasing natural sort
      order (even if the time internally has an overflow). The implementation
      additionally guarantees, that all instances within the same process do generate
      unique ids. All generated ids have the same length (padding with 0's on the
      left), which is determined by the maximum size of a long value and the
      <code>postfixSize</code> parameter passed to the constructor.

      Note: To ensure unique ids that are created within the same millisecond (or
      maximum time resolution of the system), the implementation uses an internal
      counter. The maximum value of this counter is determined by the
      <code>postfixSize</code> parameter i.e. the largest value that can be
      represented in base 36. If the counter exceeds this value, an
      IllegalStateException is thrown.

      Note: The uniqueness of the generated ids cannot be guaranteed if the system
      performs time shifts, that affect the running processes.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            joehni Joerg Schaible
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment