01: /*
02: * Fast Infoset ver. 0.1 software ("Software")
03: *
04: * Copyright, 2004-2005 Sun Microsystems, Inc. All Rights Reserved.
05: *
06: * Software is licensed under the Apache License, Version 2.0 (the "License");
07: * you may not use this file except in compliance with the License. You may
08: * obtain a copy of the License at:
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing, software
13: * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14: * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15: * License for the specific language governing permissions and limitations.
16: *
17: * Sun supports and benefits from the global community of open source
18: * developers, and thanks the community for its important contributions and
19: * open standards-based technology, which Sun has adopted into many of its
20: * products.
21: *
22: * Please note that portions of Software may be provided with notices and
23: * open source licenses from such communities and third parties that govern the
24: * use of those portions, and any licenses granted hereunder do not alter any
25: * rights and obligations you may have under such open source licenses,
26: * however, the disclaimer of warranty and limitation of liability provisions
27: * in this License will apply to all Software in this distribution.
28: *
29: * You acknowledge that the Software is not designed, licensed or intended
30: * for use in the design, construction, operation or maintenance of any nuclear
31: * facility.
32: *
33: * Apache License
34: * Version 2.0, January 2004
35: * http://www.apache.org/licenses/
36: *
37: */
38:
39: package com.sun.xml.fastinfoset.algorithm;
40:
41: import com.sun.xml.fastinfoset.EncodingConstants;
42: import org.jvnet.fastinfoset.EncodingAlgorithmIndexes;
43:
44: public final class BuiltInEncodingAlgorithmFactory {
45:
46: public final static BuiltInEncodingAlgorithm[] table = new BuiltInEncodingAlgorithm[EncodingConstants.ENCODING_ALGORITHM_BUILTIN_END + 1];
47:
48: public final static HexadecimalEncodingAlgorithm hexadecimalEncodingAlgorithm = new HexadecimalEncodingAlgorithm();
49:
50: public final static BASE64EncodingAlgorithm base64EncodingAlgorithm = new BASE64EncodingAlgorithm();
51:
52: public final static BooleanEncodingAlgorithm booleanEncodingAlgorithm = new BooleanEncodingAlgorithm();
53:
54: public final static ShortEncodingAlgorithm shortEncodingAlgorithm = new ShortEncodingAlgorithm();
55:
56: public final static IntEncodingAlgorithm intEncodingAlgorithm = new IntEncodingAlgorithm();
57:
58: public final static LongEncodingAlgorithm longEncodingAlgorithm = new LongEncodingAlgorithm();
59:
60: public final static FloatEncodingAlgorithm floatEncodingAlgorithm = new FloatEncodingAlgorithm();
61:
62: public final static DoubleEncodingAlgorithm doubleEncodingAlgorithm = new DoubleEncodingAlgorithm();
63:
64: public final static UUIDEncodingAlgorithm uuidEncodingAlgorithm = new UUIDEncodingAlgorithm();
65:
66: static {
67: table[EncodingAlgorithmIndexes.HEXADECIMAL] = hexadecimalEncodingAlgorithm;
68: table[EncodingAlgorithmIndexes.BASE64] = base64EncodingAlgorithm;
69: table[EncodingAlgorithmIndexes.SHORT] = shortEncodingAlgorithm;
70: table[EncodingAlgorithmIndexes.INT] = intEncodingAlgorithm;
71: table[EncodingAlgorithmIndexes.LONG] = longEncodingAlgorithm;
72: table[EncodingAlgorithmIndexes.BOOLEAN] = booleanEncodingAlgorithm;
73: table[EncodingAlgorithmIndexes.FLOAT] = floatEncodingAlgorithm;
74: table[EncodingAlgorithmIndexes.DOUBLE] = doubleEncodingAlgorithm;
75: table[EncodingAlgorithmIndexes.UUID] = uuidEncodingAlgorithm;
76: }
77: }
|