1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.sun.syndication.feed.module;
18
19 import com.sun.syndication.feed.impl.ObjectBean;
20 import com.sun.syndication.feed.impl.CopyFromHelper;
21
22 import java.util.Collections;
23 import java.util.HashMap;
24 import java.util.Map;
25 import java.io.Serializable;
26
27 /***
28 * Subject of the Dublin Core ModuleImpl, default implementation.
29 * <p>
30 * @see <a href="http://web.resource.org/rss/1.0/modules/dc/">Dublin Core module</a>.
31 * @author Alejandro Abdelnur
32 *
33 */
34 public class DCSubjectImpl implements Cloneable,Serializable, DCSubject {
35 private ObjectBean _objBean;
36 private String _taxonomyUri;
37 private String _value;
38
39 /***
40 * Default constructor. All properties are set to <b>null</b>.
41 * <p>
42 *
43 */
44 public DCSubjectImpl() {
45 _objBean = new ObjectBean(this.getClass(),this);
46 }
47
48 /***
49 * Creates a deep 'bean' clone of the object.
50 * <p>
51 * @return a clone of the object.
52 * @throws CloneNotSupportedException thrown if an element of the object cannot be cloned.
53 *
54 */
55 public Object clone() throws CloneNotSupportedException {
56 return _objBean.clone();
57 }
58
59 /***
60 * Indicates whether some other object is "equal to" this one as defined by the Object equals() method.
61 * <p>
62 * @param other he reference object with which to compare.
63 * @return <b>true</b> if 'this' object is equal to the 'other' object.
64 *
65 */
66 public boolean equals(Object other) {
67 return _objBean.equals(other);
68 }
69
70 /***
71 * Returns a hashcode value for the object.
72 * <p>
73 * It follows the contract defined by the Object hashCode() method.
74 * <p>
75 * @return the hashcode of the bean object.
76 *
77 */
78 public int hashCode() {
79 return _objBean.hashCode();
80 }
81
82 /***
83 * Returns the String representation for the object.
84 * <p>
85 * @return String representation for the object.
86 *
87 */
88 public String toString() {
89 return _objBean.toString();
90 }
91
92 /***
93 * Returns the DublinCore subject taxonomy URI.
94 * <p>
95 * @return the DublinCore subject taxonomy URI, <b>null</b> if none.
96 *
97 */
98 public String getTaxonomyUri() {
99 return _taxonomyUri;
100 }
101
102 /***
103 * Sets the DublinCore subject taxonomy URI.
104 * <p>
105 * @param taxonomyUri the DublinCore subject taxonomy URI to set, <b>null</b> if none.
106 *
107 */
108 public void setTaxonomyUri(String taxonomyUri) {
109 _taxonomyUri = taxonomyUri;
110 }
111
112 /***
113 * Returns the DublinCore subject value.
114 * <p>
115 * @return the DublinCore subject value, <b>null</b> if none.
116 *
117 */
118 public String getValue() {
119 return _value;
120 }
121
122 /***
123 * Sets the DublinCore subject value.
124 * <p>
125 * @param value the DublinCore subject value to set, <b>null</b> if none.
126 *
127 */
128 public void setValue(String value) {
129 _value = value;
130 }
131
132 public Class getInterface() {
133 return DCSubject.class;
134 }
135
136 public void copyFrom(Object obj) {
137 COPY_FROM_HELPER.copy(this,obj);
138 }
139
140 private static final CopyFromHelper COPY_FROM_HELPER;
141
142 static {
143 Map basePropInterfaceMap = new HashMap();
144 basePropInterfaceMap.put("taxonomyUri",String.class);
145 basePropInterfaceMap.put("value",String.class);
146
147 Map basePropClassImplMap = Collections.EMPTY_MAP;
148
149 COPY_FROM_HELPER = new CopyFromHelper(DCSubject.class,basePropInterfaceMap,basePropClassImplMap);
150 }
151
152 }