API Overview API Index Package Overview Direct link to this page
JDK 1.6
  javax.print.attribute. TextSyntax View Javadoc
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134

/*
 * @(#)TextSyntax.java	1.8 05/11/17
 *
 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */


package javax.print.attribute;

import java.io.Serializable;
import java.util.Locale;

/**
 * Class TextSyntax is an abstract base class providing the common 
 * implementation of all attributes whose value is a string. The text attribute 
 * includes a locale to indicate the natural language. Thus, a text attribute 
 * always represents a localized string. Once constructed, a text attribute's 
 * value is immutable. 
 * <P>
 *
 * @author  David Mendenhall
 * @author  Alan Kaminsky
 */
public abstract class TextSyntax implements Serializable, Cloneable {

    private static final long serialVersionUID = -8130648736378144102L;

    /**
     * String value of this text attribute.
     * @serial
     */
    private String value;

    /**
     * Locale of this text attribute. 
     * @serial
     */
    private Locale locale;

    /**
     * Constructs a TextAttribute with the specified string and locale. 
     *
     * @param  value   Text string.
     * @param  locale  Natural language of the text string. null
     * is interpreted to mean the default locale for as returned
     * by <code>Locale.getDefault()</code>
     *
     * @exception  NullPointerException
     *     (unchecked exception) Thrown if <CODE>value</CODE> is null.
     */
    protected TextSyntax(String value, Locale locale) {
	this.value = verify (value);
	this.locale = verify (locale);
    }

    private static String verify(String value) {
	if (value == null) {
	    throw new NullPointerException(" value is null");
	}
	return value;
    }

    private static Locale verify(Locale locale) {
	if (locale == null) {
	    return Locale.getDefault();
	}
	return locale;
    }

    /**
     * Returns this text attribute's text string.
     * @return the text string.
     */
    public String getValue() {
	return value;
    }

    /**
     * Returns this text attribute's text string's natural language (locale). 
     * @return the locale
     */
    public Locale getLocale() {
	return locale;
    } 

    /**
     * Returns a hashcode for this text attribute.
     *
     * @return  A hashcode value for this object.
     */
    public int hashCode() {
	return value.hashCode() ^ locale.hashCode();
    }

    /**
     * Returns whether this text attribute is equivalent to the passed in 
     * object. To be equivalent, all of the following conditions must be true: 
     * <OL TYPE=1>
     * <LI>
     * <CODE>object</CODE> is not null.
     * <LI>
     * <CODE>object</CODE> is an instance of class TextSyntax.
     * <LI>
     * This text attribute's underlying string and <CODE>object</CODE>'s 
     * underlying string are equal. 
     * <LI>
     * This text attribute's locale and <CODE>object</CODE>'s locale are 
     * equal. 
     * </OL>
     *
     * @param  object  Object to compare to.
     *
     * @return  True if <CODE>object</CODE> is equivalent to this text
     *          attribute, false otherwise. 
     */
    public boolean equals(Object object) {
	return(object != null &&
	       object instanceof TextSyntax &&
	       this.value.equals (((TextSyntax) object).value) &&
	       this.locale.equals (((TextSyntax) object).locale));
    }

    /**
     * Returns a String identifying this text attribute. The String is
     * the attribute's underlying text string.
     *
     * @return  A String identifying this object.
     */
    public String toString(){
	return value;
    }
    
}

Generated By: JavaOnTracks Doclet 0.1.4     ©Thibaut Colar