1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package gls.ch06.s05.testClasses;
19
20
21 import org.codehaus.groovy.runtime.InvokerHelper;
22
23 import groovy.lang.GroovyObject;
24 import groovy.lang.MetaClass;
25
26 /***
27 * @author John Wilson
28 *
29 */
30
31 public class Tt1cgi extends Tt1c implements GroovyObject {
32
33 private MetaClass metaClass = InvokerHelper.getMetaClass(this);
34
35 public MetaClass getMetaClass() {
36 return this.metaClass;
37 }
38
39 public Object getProperty(final String property) {
40 return this.metaClass.getProperty(this, property);
41 }
42
43 public Object invokeMethod(final String name, final Object args) {
44 return this.metaClass.invokeMethod(this, name, args);
45 }
46
47 public void setMetaClass(final MetaClass metaClass) {
48 this.metaClass = metaClass;
49 }
50
51 public void setProperty(final String property, final Object newValue) {
52 this.metaClass.setProperty(this, property, newValue);
53 }
54 }