001    package org.granite.messaging.reflect;
002    
003    import java.lang.annotation.Annotation;
004    import java.lang.reflect.InvocationTargetException;
005    
006    public class NullProperty implements Property {
007            
008            public Class<?> getType() {
009                    throw new UnsupportedOperationException();
010            }
011    
012            public String getName() {
013                    throw new UnsupportedOperationException();
014            }
015    
016            public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass) {
017                    throw new UnsupportedOperationException();
018            }
019    
020            public boolean isReadable() {
021                    throw new UnsupportedOperationException();
022            }
023    
024            public boolean isWritable() {
025                    throw new UnsupportedOperationException();
026            }
027    
028            public boolean getBoolean(Object holder)
029                    throws IllegalArgumentException, IllegalAccessException,
030                    InvocationTargetException {
031                    throw new UnsupportedOperationException();
032            }
033    
034            public char getChar(Object holder) throws IllegalArgumentException,
035                    IllegalAccessException, InvocationTargetException {
036                    throw new UnsupportedOperationException();
037            }
038    
039            public byte getByte(Object holder) throws IllegalArgumentException,
040                    IllegalAccessException, InvocationTargetException {
041                    throw new UnsupportedOperationException();
042            }
043    
044            public short getShort(Object holder) throws IllegalArgumentException,
045                    IllegalAccessException, InvocationTargetException {
046                    throw new UnsupportedOperationException();
047            }
048    
049            public int getInt(Object holder) throws IllegalArgumentException,
050                    IllegalAccessException, InvocationTargetException {
051                    throw new UnsupportedOperationException();
052            }
053    
054            public long getLong(Object holder) throws IllegalArgumentException,
055                    IllegalAccessException, InvocationTargetException {
056                    throw new UnsupportedOperationException();
057            }
058    
059            public float getFloat(Object holder) throws IllegalArgumentException,
060                    IllegalAccessException, InvocationTargetException {
061                    throw new UnsupportedOperationException();
062            }
063    
064            public double getDouble(Object holder) throws IllegalArgumentException,
065                    IllegalAccessException, InvocationTargetException {
066                    throw new UnsupportedOperationException();
067            }
068    
069            public Object getObject(Object holder) throws IllegalArgumentException,
070                    IllegalAccessException, InvocationTargetException {
071                    throw new UnsupportedOperationException();
072            }
073    
074            public Object getRawObject(Object holder) throws IllegalArgumentException,
075                            IllegalAccessException, InvocationTargetException {
076                    throw new UnsupportedOperationException();
077            }
078    
079            public void setBoolean(Object holder, boolean value)
080                    throws IllegalArgumentException, IllegalAccessException,
081                    InvocationTargetException {
082                    throw new UnsupportedOperationException();
083            }
084    
085            public void setChar(Object holder, char value)
086                    throws IllegalArgumentException, IllegalAccessException,
087                    InvocationTargetException {
088                    throw new UnsupportedOperationException();
089            }
090    
091            public void setByte(Object holder, byte value)
092                    throws IllegalArgumentException, IllegalAccessException,
093                    InvocationTargetException {
094                    throw new UnsupportedOperationException();
095            }
096    
097            public void setShort(Object holder, short value)
098                    throws IllegalArgumentException, IllegalAccessException,
099                    InvocationTargetException {
100                    throw new UnsupportedOperationException();
101            }
102    
103            public void setInt(Object holder, int value)
104                    throws IllegalArgumentException, IllegalAccessException,
105                    InvocationTargetException {
106                    throw new UnsupportedOperationException();
107            }
108    
109            public void setLong(Object holder, long value)
110                    throws IllegalArgumentException, IllegalAccessException,
111                    InvocationTargetException {
112                    throw new UnsupportedOperationException();
113            }
114    
115            public void setFloat(Object holder, float value)
116                    throws IllegalArgumentException, IllegalAccessException,
117                    InvocationTargetException {
118                    throw new UnsupportedOperationException();
119            }
120    
121            public void setDouble(Object holder, double value)
122                    throws IllegalArgumentException, IllegalAccessException,
123                    InvocationTargetException {
124                    throw new UnsupportedOperationException();
125            }
126    
127            public void setObject(Object holder, Object value)
128                    throws IllegalArgumentException, IllegalAccessException,
129                    InvocationTargetException {
130                    throw new UnsupportedOperationException();
131            }
132    
133            @Override
134            public int hashCode() {
135                    return 0;
136            }
137    
138            @Override
139            public boolean equals(Object obj) {
140                    return obj == this;
141            }
142    
143            @Override
144            public String toString() {
145                    return NullProperty.class.getSimpleName();
146            }
147    }