From d57dc348f16813b57d0fd051e8cc0201a0c29593 Mon Sep 17 00:00:00 2001 From: Matt Rendina Date: Tue, 28 Nov 2017 10:26:43 -0500 Subject: Relocate class definition --- src/bconfig.groovy | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'src/bconfig.groovy') diff --git a/src/bconfig.groovy b/src/bconfig.groovy index be55413..3d070f6 100644 --- a/src/bconfig.groovy +++ b/src/bconfig.groovy @@ -1,6 +1,37 @@ // src/bconfig.groovy package bconfig; +class BuildConfig implements Serializable { + def nodetype = "" + def build_mode = "" + def build_args = [] + def env_vars = [] + def configure_cmds = [] + def build_cmds = [] + def run_tests = true + //Boolean boolValue + + // Constructors + BuildConfig() { + nodetype = "" + } + BuildConfig(nodetype) { + this.nodetype = nodetype + } + // createNewInstance method requires Jenkins script approval for the + // following signatures: + // method groovy.lang.MetaBeanProperty getSetter + // method groovy.lang.MetaObjectProtocol getProperties + // method groovy.lang.MetaProperty getProperty java.lang.Object + // method groovy.lang.MetaProperty setProperty java.lang.Object java.lang.Object + def BuildConfig copy(){ + BuildConfig.metaClass.getProperties().findAll(){it.getSetter()!=null}.inject(new BuildConfig()){buildconfig,metaProp-> + metaProp.setProperty(buildconfig,metaProp.getProperty(this)) + buildconfig + } + } +} + class bconfig implements Serializable { def name = "My name" } -- cgit