Commit Graph

85 Commits

Author SHA1 Message Date
Fabio Lima 1dffbf1ebb Add static methods for extracting time and random components #9
Add static methods to Ulid:
 - Ulid.getInstant(String);
 - Ulid.getTime(String);
 - Ulid.getRandom(String);

List of changes:

Updated Ulid
Updated test cases
Updated README.md

Test coverage 99.4%
2021-02-13 20:14:31 -03:00
Fabio Lima b5b262be42 Merge branch 'master' of https://github.com/f4b6a3/ulid-creator 2021-02-04 02:07:11 -03:00
Fabio Lima 3f10989f74 [maven-release-plugin] prepare for next development iteration 2021-02-04 02:06:28 -03:00
Fabio Lima 58e111c841 [maven-release-plugin] prepare for next development iteration 2021-01-30 09:29:46 -03:00
Fabio Lima 9a3ca63ad6 [maven-release-plugin] prepare release ulid-creator-3.0.1 2021-01-30 09:29:46 -03:00
Fabio Lima 4df6fbfa9b Development of version 3.0.0 #7
renamed subpackage 'creator' to 'factory'
2021-01-30 09:29:08 -03:00
Fabio Lima fc9aa7742e [maven-release-plugin] prepare for next development iteration 2021-01-30 07:18:40 -03:00
Fabio Lima ad93e0207b [maven-release-plugin] prepare release ulid-creator-3.0.0 2021-01-30 07:18:40 -03:00
Fabio Lima f1eaebd3bd Development of version 3.0.0 #7
continuing...

List of changes:

Improve Ulid
Create UlidFactory
Create DefaultUlidFactory
Create MonotonicUlidFactory
Improve UlidTest
Create UlidFactoryTest
Create DefaultUlidFactoryTest
Create MonotonicUlidFactoryTest
Update UniquenessTest
Update README.md
Update javadoc

Test coverage: 99.3%
2021-01-30 07:17:09 -03:00
Fabio Lima 3aa29be465 Development of version 3.0.0 #7
Continuing...

Improve Ulid
Simplify UlidSpecCreator
Simplify MonotonicUlidSpecCreator
Remove OtherRandomStrategy
Remove UlidValidator
Update test cases
2021-01-25 02:19:08 -03:00
Fabio Lima ef2842bfe8 Development of version 3.0.0 #7
Continuing...

List of changes:

Improved Ulid
Improved UlidCrator
Improved UlidSpecCreator
Improved DefaultUlidSpecCreator
Improved MonotonicUlidSpecCreator
Removed TimestampStrategy
Removed DefaultTimestampStrategy
Removed FixedTimestampStrategy
Updated testa cases
2021-01-24 16:33:11 -03:00
Fabio Lima 2ffa7a95dd Development of version 3.0.0 #7
Changed the uuid-creator to generate two types of ULID: default
(non-monotonic) and monotonic.

Until version 2.x.x this library only created monotonic ULIDs.

The version 3.0.0 breaks compatibility.

List of changes:

Changed UlidCreator
Created Ulid
Created UlidSpecCreator // abstract
Created DefaultUlidSpecCreator // implementation
Created MonotonicUlidSpecCreator // implementation
Removed UlidConverter
Removed UlidUtil
Removed UlidStruct
Create and update test cases
and more...

Test coverage: 93.5%
2021-01-24 00:08:24 -03:00
Fabio Lima 5289a469b2 [maven-release-plugin] prepare for next development iteration 2020-11-16 01:40:36 -03:00
Fabio Lima 3f3484bfce [maven-release-plugin] prepare release ulid-creator-2.3.3 2020-11-16 01:40:36 -03:00
Fabio Lima e52b2cdefd Add test cases, and remove unused code
List of changes:

Change UlidUtil // remove unused code
Change UlidUtilTest // add tests and remove unused code
Change UlidStructTest // add tests
Change UlidValidator // add methods for char[] args
Optimaze UlidSpecCreator // small optimization
Optimaze UlidStruct // small optimization
Update README.md
2020-11-16 01:39:52 -03:00
Fabio Lima e4a3558595 [maven-release-plugin] prepare for next development iteration 2020-11-09 04:39:23 -03:00
Fabio Lima 0498859143 [maven-release-plugin] prepare release ulid-creator-2.3.2 2020-11-09 04:39:23 -03:00
Fabio Lima 1bee3ba042 Optimization of the ULID string validation
It's not needed to parse the whole ULID timestamp. All is needed is to
check the first two bits. They are extra bits added by the base-32
encoding. Both bits must be ZERO.
2020-11-09 04:27:20 -03:00
Fabio Lima 1b47994150 [maven-release-plugin] prepare for next development iteration 2020-11-08 17:42:05 -03:00
Fabio Lima d690e3f796 [maven-release-plugin] prepare release ulid-creator-2.3.1 2020-11-08 17:42:04 -03:00
Fabio Lima 75d313c9ed [#6] Move v4 generators to UlidStruct
Moved v4 generators to UlidStruct

List of Changes:

Create UlidStruct.toUuid4()
Create UlidStruct.toString4()
Create UlidCreatorUuidTest // test cases
Create UlidCreatorStringTest // test cases
Add UlidUtil.extractUnixMilliseconds(UUID ulid)
Add UlidUtil.extractUnixMilliseconds(String ulid)
2020-11-08 17:40:50 -03:00
Fabio Lima 686fec9ce8 [maven-release-plugin] prepare for next development iteration 2020-11-08 11:16:27 -03:00
Fabio Lima b554ae9b97 [maven-release-plugin] prepare release ulid-creator-2.3.0 2020-11-08 11:16:27 -03:00
Fabio Lima 73d43dfc41 [#5] Generate ULID compatible with RFC-4122 UUID v4
Now it can generate UUIDs and ULIDs compatible with RFC-4122 UUID v4.

List of Changes:

Created UlidCreator.getUlid4();
Created UlidCreator.getUlidString4();
Updated README.md

Coverage 94.1%
2020-11-08 11:15:22 -03:00
Fabio Lima e846ae9d71 [maven-release-plugin] prepare for next development iteration 2020-11-08 07:56:40 -03:00
Fabio Lima 9c5f39520d [maven-release-plugin] prepare release ulid-creator-2.2.0 2020-11-08 07:56:40 -03:00
Fabio Lima 54cd5c0595 [#4] Optimize the generation of ULID in string format
Now the generation of ULID in string format is 2.5x faster than before.

List of changes:

Optimize UlidSpecCreator
Optimize UlidConverter
Optimize UlidValidator
Create UlidStruct // class for internal use and test cases
Add test cases
Update README.md
Update javadoc

Coverage 94.3%
2020-11-08 07:55:58 -03:00
Fabio Lima b8741f56df Merge branch 'master' of https://github.com/f4b6a3/ulid-creator 2020-10-17 21:53:53 -03:00
Fabio Lima 20aeb581cc [maven-release-plugin] prepare for next development iteration 2020-10-17 21:51:39 -03:00
Fabio Lima fcb6989918 [maven-release-plugin] prepare release ulid-creator-2.1.0 2020-10-17 21:51:39 -03:00
Fabio Lima fdd33556a7 [#3] Remove overrun exception
Remove UlidCreatorException // extremely unlikely to occur overrun

Add UlidCreator.toString() // from UUID to crockford base 32

Change DefaultRandomStrategy // no need for thread local SecureRandom

Update test cases
Update README.md
Update javadoc

Test coverage: 94.2%
2020-10-17 21:50:37 -03:00
Fábio Lima cf7cdbf75a
Merge pull request #2 from f4b6a3/dependabot/maven/junit-junit-4.13.1
Bump junit from 4.12 to 4.13.1
2020-10-17 08:22:19 -03:00
dependabot[bot] 18c333968a
Bump junit from 4.12 to 4.13.1
Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.12...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-13 19:35:38 +00:00
Fabio Lima 37ffb9e6ba [maven-release-plugin] prepare for next development iteration 2020-07-06 23:31:14 -03:00
Fabio Lima 8d66ded55f [maven-release-plugin] prepare release ulid-creator-2.0.2 2020-07-06 23:31:13 -03:00
Fabio Lima 24a2d4ce13 ...
A time out occured while publishing version 2.0.1 to maven central.

The version 2.0.2 will be created to try again.
2020-07-06 23:30:18 -03:00
Fabio Lima 3962862107 [maven-release-plugin] prepare for next development iteration 2020-07-06 04:39:28 -03:00
Fabio Lima 1a4f110cd1 [maven-release-plugin] prepare release ulid-creator-2.0.1 2020-07-06 04:39:28 -03:00
Fabio Lima 3929965fe9 Fix increment
Fix UlidSpecCreator.increment()
2020-07-06 04:31:17 -03:00
Fábio Lima 1deb79b52e
Update README.md 2020-07-05 00:50:30 -03:00
Fábio Lima d1b8ba9d07
Update README.md 2020-07-05 00:49:48 -03:00
Fabio Lima 3331ca94c1 [maven-release-plugin] prepare for next development iteration 2020-07-04 12:54:00 -03:00
Fabio Lima 2bdb653763 [maven-release-plugin] prepare release ulid-creator-2.0.0 2020-07-04 12:53:59 -03:00
Fabio Lima 327aa7bc6b Version 2.0.0
Rename UlidBasedGuidCreator to UlidSpecCreator

Add method UlidCreator.fromString()
Add RandomStrategy for UlidSpecCreator
Add DefaultRandomStrategy using thread local SecureRandom
Add OtherRandomStrategy for any instance of Random
Add tests cases

Optimize UlidConverter.fromString()
Optimize UlidConverter.toString()
Optimize UlidValidator.isValid()
Optimize UlidSpecCreator

Update README.md
Update tests cases
2020-07-04 12:37:50 -03:00
Fabio Lima a79edd90e5 [maven-release-plugin] prepare for next development iteration 2020-04-19 20:46:23 -03:00
Fabio Lima d763ce0d13 [maven-release-plugin] prepare release ulid-creator-1.1.1 2020-04-19 20:46:22 -03:00
Fabio Lima 74892d1f7b Updated pom.xml 2020-04-19 20:44:36 -03:00
Fabio Lima 5b27212729 [maven-release-plugin] prepare for next development iteration 2020-04-18 03:41:46 -03:00
Fabio Lima fe01b0d7d6 [maven-release-plugin] prepare release ulid-creator-1.1.0 2020-04-18 03:41:46 -03:00
Fabio Lima e19127ea44 Updated pom.xml 2020-04-18 03:38:11 -03:00