View Javadoc

1   package org.csc.phynixx.common.generator;
2   
3   /*
4    * #%L
5    * phynixx-common
6    * %%
7    * Copyright (C) 2014 csc
8    * %%
9    * Licensed under the Apache License, Version 2.0 (the "License");
10   * you may not use this file except in compliance with the License.
11   * You may obtain a copy of the License at
12   * 
13   *      http://www.apache.org/licenses/LICENSE-2.0
14   * 
15   * Unless required by applicable law or agreed to in writing, software
16   * distributed under the License is distributed on an "AS IS" BASIS,
17   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   * See the License for the specific language governing permissions and
19   * limitations under the License.
20   * #L%
21   */
22  
23  
24  class IDLongGenerator implements IDGenerator<Long>{
25  
26  
27      private Long current = (long) 1;
28  
29      IDLongGenerator() {
30          this(0l);
31      }
32  
33  
34      IDLongGenerator(Long seed) {
35          current=seed;
36      }
37  
38  
39      public long getCurrentLong() {
40          return this.current;
41      }
42  
43      public long generateLong() {
44          this.generate();
45          return this.getCurrentLong();
46      }
47  
48  
49      /* (non-Javadoc)
50       * @see de.csc.xaresource.sample.IResourceIDGenerator#getCurrent()
51       */
52      @Override
53      public Long getCurrent() {
54          return this.current;
55      }
56  
57      /* (non-Javadoc)
58       * @see de.csc.xaresource.sample.IResourceIDGenerator#generate()
59       */
60      @Override
61      public Long generate() {
62          long cc = current;
63          this.current = cc + 1;
64          return this.getCurrent();
65      }
66  
67  
68  }