Advertisement
Guest User

Untitled

a guest
Sep 27th, 2016
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.53 KB | None | 0 0
  1. #!/usr/bin/env groovy
  2. @Grapes([
  3. @Grab(group='org.jvnet.hudson', module='xstream', version='1.4.7-jenkins-1'),
  4. ])
  5. def a
  6.  
  7. println 'xstream'
  8. com.thoughtworks.xstream.XStream s = new com.thoughtworks.xstream.XStream()
  9. println s
  10. def reg1 = s.converterRegistry
  11. println "using property: $reg1"
  12.  
  13. com.thoughtworks.xstream.XStream.metaClass.methodMissing = { String name, def args ->
  14. println "missing $name"
  15. if (name=="getConverterRegistry") {
  16. return delegate.converterRegistry
  17. }
  18. }
  19.  
  20. def reg2 = s.getConverterRegistry()
  21. println "using getter : $reg2"
  22.  
  23. println "ok"
  24.  
  25. com.thoughtworks.xstream.XStream@6c45ee6e
  26. using property: com.thoughtworks.xstream.XStream$2@2e8e8225
  27. missing getConverterRegistry
  28. using getter : com.thoughtworks.xstream.XStream$2@2e8e8225
  29. ok
  30.  
  31. #!/usr/bin/env groovy
  32.  
  33. import hudson.util.XStream2
  34. import com.thoughtworks.xstream.XStream
  35.  
  36. @Grapes([
  37. @Grab(group='org.jvnet.hudson', module='xstream', version='1.4.7-jenkins-1'),
  38. @Grab(group='org.jenkins-ci.main', module='jenkins-core', version='1.642.3', transitive=false),
  39. ])
  40. def a
  41.  
  42. XStream.metaClass.methodMissing = { String name, def args ->
  43. println "missing $name for XStream"
  44. if (name=="getConverterRegistry") {
  45. return delegate.converterRegistry
  46. }
  47. }
  48.  
  49. def reg2 = new XStream().getConverterRegistry()
  50. println reg2
  51.  
  52. XStream2.metaClass.methodMissing = { String name, def args ->
  53. println "missing $name for XStream2"
  54. if (name=="getConverterRegistry") {
  55. return delegate.converterRegistry
  56. }
  57. }
  58.  
  59. println 'xstream2'
  60. XStream2 s2 = new XStream2() // internal call to this.getConverterRegistry()
  61. println "ok"
  62.  
  63. missing getConverterRegistry for XStream
  64. com.thoughtworks.xstream.XStream$2@c2db68f
  65. xstream2
  66. Caught: java.lang.NoSuchMethodError: hudson.util.XStream2.getConverterRegistry()Lcom/thoughtworks/xstream/converters/ConverterRegistry;
  67. java.lang.NoSuchMethodError: hudson.util.XStream2.getConverterRegistry()Lcom/thoughtworks/xstream/converters/ConverterRegistry;
  68. at hudson.util.XStream2.wrapMapper(XStream2.java:188)
  69. at com.thoughtworks.xstream.XStream.buildMapper(XStream.java:610)
  70. at com.thoughtworks.xstream.XStream.<init>(XStream.java:568)
  71. at com.thoughtworks.xstream.XStream.<init>(XStream.java:496)
  72. at com.thoughtworks.xstream.XStream.<init>(XStream.java:465)
  73. at com.thoughtworks.xstream.XStream.<init>(XStream.java:411)
  74. at com.thoughtworks.xstream.XStream.<init>(XStream.java:350)
  75. at hudson.util.XStream2.<init>(XStream2.java:89)
  76. at TestXStream2.run(TestXStream2.groovy:33)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement