litesoft
@ HEAD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.sequences; public interface SequenceSource { public void clearAllGroups(); public void clear( String pGroup ); public void preallocateNextSequenceNumbers( String pGroup, int pBlockSize, Long pRestartAt ); public long getNextSequenceNumber( String pGroup, Long pRestartAt ); public long getNextSequenceNumber( String pGroup ); public long getNextSequenceNumber( Class pGroup ); public static class Restart { public static boolean at( long pRetVal, Long pRestartAt ) { return (pRestartAt != null) && LLat( pRetVal, pRestartAt ); } private static boolean LLat( long pRetVal, long pRestartAt ) { return (pRestartAt > 1) && (pRestartAt <= pRetVal); } } public static final SequenceSource NULL = new SequenceSource() { private long mLastNumber = 0; public void clearAllGroups() { } public void clear( String pGroup ) { } public void preallocateNextSequenceNumbers( String pGroup, int pBlockSize, Long pRestartAt ) { } public synchronized long getNextSequenceNumber( String pGroup, Long pRestartAt ) { long rv = ++mLastNumber; if ( Restart.at( rv, pRestartAt ) ) { rv = mLastNumber = 1; } return rv; } public long getNextSequenceNumber( String pGroup ) { return getNextSequenceNumber( pGroup, null ); } public long getNextSequenceNumber( Class pGroup ) { return getNextSequenceNumber( pGroup.getName() ); } }; } |
Commits for litesoft/trunk/Java/core/Anywhere/src/org/litesoft/sequences/SequenceSource.java
Revision | Author | Commited | Message |
---|---|---|---|
950 Diff | GeorgeS | Thu 19 Jun, 2014 17:57:04 +0000 | New Lines |
948 Diff | GeorgeS | Sat 07 Jun, 2014 23:42:39 +0000 | Jusefuls Formatter Updated to New Code Format |
947 Diff | GeorgeS | Fri 06 Jun, 2014 23:36:56 +0000 | Correct Spelling of package! |
49 Diff | GeorgeS | Mon 12 Apr, 2010 02:59:10 +0000 | License Text |
2 | GeorgeS | Sun 07 Feb, 2010 12:50:58 +0000 |