1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.axis.message.addressing.uuid;
18
19 import org.apache.axis.components.uuid.UUIDGen;
20 import org.apache.axis.components.uuid.UUIDGenFactory;
21 import org.apache.ws.addressing.uuid.UUIdGenerator;
22
23 /***
24 * A {@link UUIdGenerator} implementation that uses the UUID generator that
25 * comes with Apache Axis.
26 *
27 * @author Ian P. Springer <ian_springer@hp.com>
28 */
29 public class AxisUUIdGenerator implements UUIdGenerator {
30
31 private ThreadLocal AXIS_UUIDGENERATOR =
32 new ThreadLocal() {
33 protected synchronized Object initialValue() {
34 return UUIDGenFactory.getUUIDGen();
35 }
36 };
37
38 public String generateUUId() {
39 UUIDGen uuidGen = (UUIDGen) AXIS_UUIDGENERATOR.get();
40 return uuidGen.nextUUID();
41 }
42 }