Index
A
- @attribute
- AbstractFactory class, FactoryBuilderSupport
- newInstance method / FactoryBuilderSupport
- onHandleNodeAttributes method / FactoryBuilderSupport
- setParent method / FactoryBuilderSupport
- setChild method / FactoryBuilderSupport
- isLeaf method / FactoryBuilderSupport
- onNodeCompleted method / FactoryBuilderSupport
- Abstract Syntax Tree (AST) / Blocks
- Account.credit method / Using binding properties to form context
- Account class / The BroadbandPlus application classes
- account credit method / Using binding properties to form context, The BroadbandPlus application classes
- account object / Using binding properties to form context
- addTo(key) method / One-to-many
- addToInvoices method / One-to-many
- addToOrders method / One-to-many
- addTo{association} methods / One-to-many
- allof condition blocks / The Reward DSL
- amount parameter
- about / Named parameters
- Ant
- ant.taskdef() call / Gant and AntBuilder
- AntBuilder
- about / Builders for every occasion, AntBuilder
- dependency-based targets / AntBuilder
- code / AntBuilder
- and Gant / Gant and AntBuilder
- ant.taskdef() / Gant and AntBuilder
- target() / Gant and AntBuilder
- target closure / Gant and AntBuilder
- setDefaultTarget(run) call / Gant and AntBuilder
- build.gant script / Gant and AntBuilder
- depends() method / Gant and AntBuilder
- depends() call / Gant and AntBuilder
- AntBuilder class / Gant and AntBuilder
- Ant script, targets
- anyof condition blocks / The Reward DSL
- applyRewardsOnConsume() / Interfaces in Java and Groovy
- applyRewardsOnConsume, event hook method / The RewardService class
- applyRewardsOnPurchase, event hook method / The RewardService class
- applyRewardsOnUpgrade, event hook method / The RewardService class
- assertion methods, EasyB / EasyB
- assertions, Groovy language / Assertions
- associations relationship, GORM
- about / Associations
- one-to-one / One-to-one
- constraints / Constraints
- one-to-many / One-to-many
- many-to-many / Many-to-many
- ATDD
- about / ATDD, BDD with GSpec, EasyB, and Spock
- common language / ATDD, BDD with GSpec, EasyB, and Spock
- autoboxing, Groovy language / Autoboxing
B
- BDD
- about / ATDD, BDD with GSpec, EasyB, and Spock
- common language / ATDD, BDD with GSpec, EasyB, and Spock
- BDD DSL style
- about / BDD DSL style
- BehaviorCategory class / EasyB
- belongsTo, domain class / One-to-one
- binding.outerBlock / Storing and communicating results
- Binding class / Groovy bindings
- binding property
- about / Adding built-in methods
- bindings, DSLs
- closures, as built-in methods / Closures as built-in methods
- GeeTwitter class / Closures as built-in methods
- closures, as repeatable blocks / Closures as repeatable blocks
- block closures / Closures as repeatable blocks
- nestedBlock closures / Closures as repeatable blocks
- enclosing property / Closures as repeatable blocks
- specification parameter, using / Using a specification parameter
- closures, as singleton blocks / Closures as singleton blocks
- context forming, binding properties used / Using binding properties to form context
- Account.credit method / Using binding properties to form context
- results, storing / Storing and communicating results
- binding.outerBlock / Storing and communicating results
- and GORM DataSource DSL / Bindings and the GORM DataSource DSL
- block, Spock
- boilerplate
- about / Removing boilerplate
- removing / Removing boilerplate
- refactoring / Refactoring
- search, improving / Improving search
- boolean binding variables / Convenience methods and shorthand
- BroadbandPlus
- about / BroadbandPlus
- BroadbandPlus application classes
- about / The BroadbandPlus application classes
- extendMedia method / The BroadbandPlus application classes
- BroadbandPlus class / The BroadbandPlus application classes
- consume API / The BroadbandPlus application classes
- BroadbandPlus class / The BroadbandPlus application classes
- builder
- about / Builders
- design pattern / Builder design pattern
- Groovy Builders, using / Using Groovy Builders
- namespaced XML / Namespaced XML
- program logic, using / Using program logic with builders
- MarkupBuilder / Builders for every occasion
- NodeBuilder / Builders for every occasion, NodeBuilder
- DOMBuilder / Builders for every occasion
- SAXBuilder / Builders for every occasion
- AntBuilder / Builders for every occasion
- JMXBuilder / Builders for every occasion
- SwingBuilder / Builders for every occasion
- code structure / Builder code structure
- builder.root() / ClmethodMissingosure delegate
- builder block / ClmethodMissingosure delegate
- builder design pattern
- about / Builder design pattern
- components / Builder design pattern
- Builder / Builder design pattern
- ConcreteBuilder / Builder design pattern
- Director / Builder design pattern
- Product / Builder design pattern
- and GroovyMarkup / GroovyMarkup and the builder design pattern
- BuilderSupport
- about / Buclosure delegate, GroovyaboutilderSupport, FactoryBuilderSupport
- hook methods / BuilderSupport hook methods
- database builder / A database builder
- BuilderSupport class / BuilderSupport hook methods
- BuilderSupport hook methods
- createNode(Object name) / BuilderSupport hook methods
- createNode(Object name, Object value) / BuilderSupport hook methods
- createNode(Object name, Map attributes) / BuilderSupport hook methods
- createNode(Object name, Map attributes, Objects value) / BuilderSupport hook methods
- nodeCompleted(Object parent, Object node) / BuilderSupport hook methods
- setParent(Object parent, Object child) / BuilderSupport hook methods
- nodeCompleted hook / BuilderSupport hook methods
- setCurrent(Object current) hook / BuilderSupport hook methods
- Object getCurrent() hook / BuilderSupport hook methods
- setParent call / BuilderSupport hook methods
- built-in methods
- adding / Adding built-in methods
- about / Adding built-in methods
C
- .class files / Calling Groovy from Java
- callable function, EasyB / EasyB
- category class / EasyB
- closure
- about / What is a closure
- disadvantage / What is a closure
- and collection methods / Closures and collection methods
- as method parameters / Closures as method parameters
- calling / Calling closures
- named closure field, finding / Finding a named closure field
- parameters / Closure parameters
- return values / Closure return values
- scope / Closure scope
- Closure.setDelegate method
- Closure.setResolveStrategy / Resolve Strategy: OWNER_FIRST
- Closure1 parameter / ClmethodMissingosure delegate
- closure delegate, Groovy
- about / Builder code structure, ClmethodMissingosure delegate, Buclosure delegate, GroovyaboutilderSupport
- builder block / ClmethodMissingosure delegate
- root() method call / ClmethodMissingosure delegate
- level1() call / ClmethodMissingosure delegate
- level2() call / ClmethodMissingosure delegate
- closure method calls, Groovy
- about / Builder code structure, Closure method calls
- OWNER_FIRST / Resolve Strategy: OWNER_FIRST
- resolve strategy / Resolve Strategy: OWNER_FIRST
- root() method / Resolve Strategy: OWNER_FIRST
- node() method / Resolve Strategy: OWNER_FIRST
- leaf() method / Resolve Strategy: OWNER_FIRST
- closure method resolution, Groovy
- about / Builder code structure
- Closure object / Closure method calls
- closure parameter / Using a specification parameter
- Closures
- closures
- using, as built-in methods / Closures as built-in methods
- using, as repeatable blocks / Closures as repeatable blocks
- using, as singleton blocks / Closures as singleton blocks
- closures, as method parameters
- about / Closures as method parameters
- parameters, forwarding / Forwarding parameters
- closures, Groovy / Closures
- closures, Groovy language / Methods and closures
- closures, parameters
- syntax definitions / Closure parameters
- list / Closure parameters
- and doCall() method / Parameters and the doCall method
- multiple parameters, passing / Passing multiple parameters
- zero parameters, enforcing / Enforcing zero parameters
- default parameter values / Default parameter values
- curried parameters / Curried parameters
- closure scope
- about / Closure scope
- GStrings, using / Closure scope
- example / Closure scope
- this variable / this, owner, and delegate
- owner variable / this, owner, and delegate
- delegate variable / this, owner, and delegate
- collection methods
- and closures / Closures and collection methods
- collections, Groovy language
- command-line interface
- adding / Adding a command-line interface
- CompilerConfiguration class / Groovy bindings
- about / CompilerConfiguration
- composition relationship, GORM
- about / Composition
- ConfigSlurper class / DataSource configuration
- ConstrainedPropertyBuilder, builder class / Constraints
- constraints, associations
- about / Constraints
- context() block / GSpec, EasyB
- control structures, Groovy language
- about / Control structures
- Groovy truth / Groovy truth
- Groovy Falsehoods / Groovy truth
- Java ternary operator / Ternary and Elvis operators
- Elvis operator / Ternary and Elvis operators
- switch statement / Switch statement
- loops / Loops
- createNode(Object name), BuilderSupport hook methods / BuilderSupport hook methods
- createNode(Object name, Map attributes), BuilderSupport hook methods / BuilderSupport hook methods
- createNode(Object name, Map attributes, Objects value), BuilderSupport hook methods / BuilderSupport hook methods
- createNode(Object name, Object value), BuilderSupport hook methods / BuilderSupport hook methods
- createNode hook / BuilderSupport hook methods
- createNode method / A database builder
- createNode methods / A database builder
- curried closures
- about / Curried parameters
- currying
- about / Curried parameters
- Customer, domain class / Composition
- Customer.invokeMethod()
- Customer.prettyPrint() method
- Customer class / Using domain classes
- customer object / FactoryBuilderSupport
D
- database builder, BuilderSupport
- Independent Software Vendors (ISVs) / A database builder
- data sets, managing / A database builder
- migration plug-in / A database builder
- customers method / A database builder
- createNode method / A database builder
- setParent hook / A database builder
- nodeCompleted hook / A database builder
- createNode methods / A database builder
- setParent method / A database builder
- DataSource configuration, Grails
- database, creating / DataSource configuration
- DataSource.groovy source file, editing / DataSource configuration
- dbCreate field / DataSource configuration
- declareNamespace() method
- about / Namespaced XML
- delegate keyword
- example / Understanding this, delegate, and owner
- resolving rules / Understanding this, delegate, and owner
- depends() call / Gant and AntBuilder
- depends() method / Gant and AntBuilder
- doCall() method
- and parameters / Parameters and the doCall method
- domain class / Using domain classes
- DOMBuilder
- about / Builders for every occasion
- downloading
- Twitter4J / Using Twitter4J Java APIs
- DSL
- about / DSL: New name for an old idea
- programming languages, evolution / The evolution of programming languages
- general-purpose languages / General-purpose languages
- high-level programming language / General-purpose languages
- spreadsheet macros / Spreadsheets and 4GLs
- 4GLs systems (4th Generation Languages) / Spreadsheets and 4GLs
- 3GL systems (3rd Generation Languages) / Spreadsheets and 4GLs
- language-oriented programming / Language-oriented programming
- users / Who are DSLs for?
- for process engineers / A DSL for process engineers
- EXTOL / A DSL for process engineers
- stakeholder, participation / Stakeholder participation
- design / DSL design and implementation
- implementing / DSL design and implementation
- external versus internal / External versus internal DSL
- operator overloading / Operator overloading
- ComplexNumber class / Operator overloading
- Twitter APIs working with / Working with the Twitter APIs
- boilerplate, removing / Removing boilerplate
- command-line interface, adding / Adding a command-line interface
- built-in methods, adding / Adding built-in methods
- named parameters / Named parameters in DSLs
- writing, requisites / The Reward DSL
- structuring / The Reward DSL
- anyof condition blocks / The Reward DSL
- allof condition blocks / The Reward DSL
- allOf closure block, implementing / The Reward DSL
- anyOf closure block, implementing / The Reward DSL
- DSL, designing
- BroadbandPlus / BroadbandPlus
- Reward, types / Reward types
- Reward DSL / The Reward DSL
- events, handling / Handling events: deferred execution
- convenience methods / Convenience methods and shorthand
- shorthand binding variables / Convenience methods and shorthand
- offers / The Offers
- RewardService class / The RewardService class
- BroadbandPlus application classes / The BroadbandPlus application classes
- GroovyTestCase, testing with / Testing with GroovyTestCase
- DSLs
- bindings / Exploiting bindings in DSLs
- DTD
- about / DSL: New name for an old idea
- dynamic finders
- about / Dynamic finders
- findBy / Dynamic finders
- findAllBy / Dynamic finders
E
- eachFollower method
- eachFriend method
- each method
- about / Groovy Reflection shortcuts
- EasyB
- Eclipse
- about / Eclipse
- EJB
- about / DSL: New name for an old idea
- Elvis operator / Ternary and Elvis operators
- EmptyStack class / Spock
- enclosing property / Closures as repeatable blocks
- evaluate method
- about / Adding a command-line interface
- ExpandoMetaClass
- about / ExpandoMetaClasses
- existing method, replacing / Replacing methods
- static methods, adding / Adding or overriding static methods
- static methods, overriding / Adding or overriding static methods
- dynamic method, naming / Dynamic method naming
- overload methods, adding / Adding overloaded methods
- constructors, adding / Adding constructors
- external DSL
- versus internal DSL / External versus internal DSL
- EXTOL / A DSL for process engineers
F
- FactoryBuilderSupport
- groovy.util.FactoryBuilderSupport class / FactoryBuilderSupport
- working / FactoryBuilderSupport
- builder, implementing / FactoryBuilderSupport
- groovy.util.AbstractFactory class / FactoryBuilderSupport
- AbstractFactory class, methods / FactoryBuilderSupport
- CustomerBuilder, replacement building / FactoryBuilderSupport
- registerObjectFactorie, registration methods / FactoryBuilderSupport
- FactoryBuilderSupport class / FactoryBuilderSupport
- feature methods / Spock
- FixedStack class / GSpec
- fixture methods / Spock
- followers
- about / Twitter
- follow method
G
- 3GLs / Spreadsheets and 4GLs
- 4GLs / Spreadsheets and 4GLs
- Gant
- about / Gant
- Ant / Ant
- AntBuilder / AntBuilder
- and AntBuilder / Gant and AntBuilder
- ant.taskdef() call / Gant and AntBuilder
- target() call / Gant and AntBuilder
- setDefaultTarget(run) call / Gant and AntBuilder
- gant, command line / Gant and AntBuilder
- GantBuilder metaclass / Gant and AntBuilder
- Gant project
- about / Griffon: Builders as DSL
- GeeTwitter
- fleshing out / Fleshing out GeeTwitter
- GeeTwitter.follow()
- about / Method pointers
- GeeTwitter.login method
- calling / Fleshing out GeeTwitter
- GeeTwitter class
- about / Refactoring
- GeeTwitter DSL
- about / Named parameters in DSLs
- GeeTwitterScript.groovy class
- about / Adding built-in methods
- get() method / Using domain classes
- getAll() method / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- getClass() method
- about / Reflection
- getDeclaredFields() method
- about / Reflection
- getFirstName() method / POJOs and POGOs
- getLastName() method / POJOs and POGOs
- getMetaClass() method
- about / Metaclass
- getMethods() method
- about / Reflection
- getPackage() method
- about / Reflection
- getProperty
- about / How Builders work
- GGX
- about / Working with the Twitter APIs
- glaforge
- about / Twitter
- GORM
- about / The Grails Object Relational Mapping (GORM)
- Grails / Grails quick start
- grails-app directory / The grails-app directory
- model, building / Building a GORM model
- relationships, modeling / Modeling relationships
- associations / Associations
- composition / Composition
- inheritance / Inheritance
- querying / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- as DSL / GORM as a DSL
- GORM classes / The Grails Object Relational Mapping (GORM)
- GORM DataSource DSL
- and bindings / Bindings and the GORM DataSource DSL
- GORM model
- building / Building a GORM model
- domain classes, using / Using domain classes
- Grails
- grails-app directory / The grails-app directory
- grails-app/conf / The grails-app directory
- grails-app/controllers / The grails-app directory
- grails-app/domain / The grails-app directory
- grails-app/view / The grails-app directory
- grails-app directory
- grails-app/conf / The grails-app directory
- grails-app/controllers / The grails-app directory
- grails-app/domain / The grails-app directory
- grails-app/view / The grails-app directory
- DataSource configuration / DataSource configuration
- DataSource, configuration / DataSource configuration
- grails create-domain-class command / Constraints
- groovu.utl.ConfigSlurper, utility class / DataSource configuration
- Groovy
- VM interface / Groovy
- about / A natural fit with the JVM
- with JVM / A natural fit with the JVM
- language features / Groovy language features
- static typing / Static and optional typing
- optional typing / Static and optional typing, Optional syntax
- list and maps, manipulation / Native support for lists and maps
- closures / Closures
- operator overloading / Groovy operator overloading
- regular expression support / Regular expression support
- markup / Groovy markup
- downloading / How to find and install Groovy
- installing / How to find and install Groovy
- running / Running Groovy
- script engine / The Groovy script engine—groovy
- shebang scripts / Shebang scripts
- groovysh command / The Groovy shell: groovysh
- shell / The Groovy shell: groovysh
- console / The Groovy console: groovyConsole
- groovyConsole command / The Groovy console: groovyConsole
- groovyc command / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- compiler / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- Closures / ClosuresaboutGroovyClosuresA Groovier way to find friends
- friends, searching / ClosuresaboutGroovyClosuresA Groovier way to find friends
- search method, adding / Groovy searching
- named parameters / Named parameters
- builder / Builders
- SwingBuilder / SwingBuilder
- method pointer / Method pointers
- metaprogramming / Metaprogramming and the Groovy MOP
- this keyword / Understanding this, delegate, and owner
- owner keyword / Understanding this, delegate, and owner
- delegate keyword / Understanding this, delegate, and owner
- ExpandoMetaClass / ExpandoMetaClasses
- builder, code structure / Builder code structure
- closure method calls / Closure method calls
- pretended methods / Pretended methods
- closure delegate / ClmethodMissingosure delegate
- bindings / Groovy bindings
- integrating, with Java / Mixing and matching Groovy and Java
- calling, from Java / Calling Groovy from Java
- interfaces / Interfaces in Java and Groovy
- Groovy, calling from Java
- about / POJOs and POGOs
- POGOs / POJOs and POGOs
- POJO / POJOs and POGOs
- POJOs / POJOs and POGOs
- Groovy, running
- Groovy script engine / The Groovy script engine—groovy
- shebang scripts / Shebang scripts
- Groovy shell / The Groovy shell: groovysh
- groovysh command / The Groovy shell: groovysh
- Groovy console / The Groovy console: groovyConsole
- groovyConsole command / The Groovy console: groovyConsole
- Groovy compiler / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- groovyc command / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- groovy.lang.Binding class / Groovy bindings
- groovy.util.AbstractFactory class / FactoryBuilderSupport
- groovy.util.ResourceConnector interface
- implementing / GroovyScriptEngine
- Groovy Builders, using
- GroovyMarkup / Using Groovy Builders
- MarkupBuilder class / MarkupBuilder
- Groovyc
- about / Ant
- groovyc command / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- GroovyClassLoader class
- about / GroovyClassLoader
- scripts, integrating / Integrating scripts
- GroovyShell / GroovyShell
- GroovyClassLoader class / GroovyScriptEngine
- groovy command
- about / Adding a command-line interface
- Groovy compiler / The Groovy compiler: groovyc, Groovy, runningGroovy compilerGroovy, runninggroovyc commandGroovygroovyc commandGroovycompilerGroovy compilergroovyc commandGroovy IDE and editor integration
- Groovy console / The Groovy console: groovyConsole
- groovyConsole
- about / Using Twitter4J Java APIs
- groovyConsole command / The Groovy console: groovyConsole
- Groovy falsehoods / Groovy truth
- Groovy IDE
- NetBeans / Netbeans
- Eclipse / Eclipse
- IntelliJ IDEA / IntelliJ IDEA
- other IDEs / Other IDEs and editors
- other editors / Other IDEs and editors
- Groovy language
- module structure / Module structure
- Groovy shorthand / Groovy shorthand
- assertions / Assertions
- autoboxing / Autoboxing
- strings / Strings
- regular expressions / Regular expressions
- closures / Methods and closures
- methods / Methods and closures
- control structures / Control structures
- Groovy truth / Groovy truth
- Elvis operators / Ternary and Elvis operators
- switch statements / Switch statement
- loops / Loops
- collections / Collections
- operators / Operators
- Groovy language, features
- static typing / Static and optional typing
- optional typing / Static and optional typing, Optional syntax
- list and maps, manipulation / Native support for lists and maps
- closures / Closures
- operator overloading / Groovy operator overloading
- regular expression support / Regular expression support
- optional syntax / Optional syntax
- Groovy markup / Groovy markup
- GroovyMarkup
- and Builder design pattern / GroovyMarkup and the builder design pattern
- Groovy script engine / The Groovy script engine—groovy
- GroovyScriptEngine class / GroovyScriptEngine
- Groovy Server Pages (GSPs) / The grails-app directory
- GroovyService class / GroovyClassLoader
- groovysh command / The Groovy shell: groovysh
- GroovyShell
- about / GroovyShell
- CompilerConfiguration class / CompilerConfiguration
- Groovy shell / The Groovy shell: groovysh
- GroovyShell class / Groovy bindings
- GroovyTestCase
- about / Testing with GroovyTestCase
- setUp method / Testing with GroovyTestCase
- running / Testing with GroovyTestCase
- Groovy truth / Groovy truth
- Groovy with Java, integrating
- about / Mixing and matching Groovy and Java
- compiling, to .class files / Calling Groovy from Java
- Groovy, calling / Calling Groovy from Java
- Java, calling / Calling Java from Groovy
- privacy concerns / Privacy concerns
- interfaces / Interfaces in Java and Groovy
- dependencies, resolving / Resolving dependencies
- dependencies injection, Spring used / Dependency injection with Spring
- GSpec
- about / GSpec
- BuilderRunner class / GSpec
- specify() method / GSpec
- initially() block / GSpec
- specify() block / GSpec
- BuilderRunner object / GSpec
- stack property / GSpec
- FixedStack object / GSpec
- should_equal method / GSpec
- should_not_equal method / GSpec
- should_style assertion / GSpec
- Builder class / GSpec
- setProperty() method / GSpec
- should_be property accessor / GSpec
- should_not_be property property accessor / GSpec
- versus EasyB / EasyB
- GSpecBuilder class / GSpec
- GSpecDelegate.getProperty() / GSpec
- GSpecDelegate class / GSpec
- GSpecDelegate object / GSpec
- gTwitter
- about / Twitter
- Gygwin
- about / Adding a command-line interface
H
- hasMany map / One-to-many
I
- Identity class / One-to-one
- Independent Software Vendors (ISVs) / A database builder
- inheritance relationship, GORM
- initially() block / GSpec
- IntelliJ IDEA
- about / IntelliJ IDEA
- internal DSL
- versus external DSL / External versus internal DSL
- invokeMethod / invokeMethod
- IOCCC / The evolution of programming languages
- isLeaf method / FactoryBuilderSupport
J
- –j jointCompilation option / POJOs and POGOs
- Java
- integrating, with Groovy / Mixing and matching Groovy and Java
- calling, from Groovy / Calling Java from Groovy
- interfaces / Interfaces in Java and Groovy
- JMXBuilder
- about / Builders for every occasion
- JRuby / Groovy
- Jython / Groovy
K
- keywords
- use / Categories
- this / Understanding this, delegate, and owner
- delegate / Understanding this, delegate, and owner
- owner / Understanding this, delegate, and owner
- static / Adding or overriding static methods
L
- language-oriented programming / Language-oriented programming
- lastName, object attribute / A database builder
- leaf() method / Resolve Strategy: OWNER_FIRST
- level1() call / ClmethodMissingosure delegate
- level1() method / ClmethodMissingosure delegate
- level2() method / ClmethodMissingosure delegate
- list method / Using domain classes
- lists / Lists
- LogBuilder / BuilderSupport hook methods
- loops / Loops
M
- many-to-many, associations
- about / Many-to-many
- mapping, inheritance
- maps / Maps
- markup, Groovy / Groovy markup
- MarkupBuilder
- about / Builders for every occasion
- working / How Builders work
- MarkupBuilder.customers()
- about / GroovyMarkup syntax
- MarkupBuilder class
- about / MarkupBuilder
- Groovy Console, running / MarkupBuilder
- Markup class / Constraints
- Media class / The BroadbandPlus application classes
- message variable / Storing and communicating results
- Metaclass
- about / Metaclass
- storing / Metaclass
- .metaClass property, accessing / Metaclass
- invokeMethod() / Metaclass
- MetaClass.invokeMethod() / Pretended methods (MetaClass.invokeMethod)
- MetaClass.invokeMethod()
- MetaClass instance / FactoryBuilderSupport
- metaprogramming
- about / Metaprogramming and the Groovy MOP
- and MOP / Metaprogramming and the Groovy MOP
- method1() / Closure method calls
- method3() / Resolve Strategy: OWNER_FIRST
- method call
- about / Closures and collection methods
- methodMissing / methodMissing, ClmethodMissingosure delegate
- MethodMissingException / ClmethodMissingosure delegate
- methodMissing method / Dynamic finders
- method pointer
- assigning / Method pointers
- methods, Groovy language / Methods and closures
- model classes / Using domain classes
- Model View Controller (MVC) architecture / The grails-app directory
- module structure, Groovy language / Module structure
- MOP
- about / Using Groovy Builders
- reflection / Reflection
- reflection, shortcuts / Groovy Reflection shortcuts
- Expando / Expandos
- category / Categories
- Metaclass / Metaclass
- MVC
- about / Builder design pattern
- myMethod()
- about / Namespaced XML
N
- named closure field
- finding / Finding a named closure field
- named parameters
- about / Named parameters
- method call, invoking / Named parameters
- in DSL / Named parameters in DSLs
- named parameters, Groovy
- about / Builder code structure
- name parameter / A database builder
- namespace.tag
- about / Namespaced XML
- namespaced XML
- about / Namespaced XML
- xmlns namespaces / Namespaced XML
- StreamingMarkupBuilder / Namespaced XML
- GroovyMarkup syntax / GroovyMarkup syntax
- Napkin Look & Feel
- about / SwingBuilder
- NetBeans
- about / Netbeans
- newInstance method / FactoryBuilderSupport
- node() method / Resolve Strategy: OWNER_FIRST
- NodeBuilder
- about / Builders for every occasion, NodeBuilder
- GPath, using / Using GPath to navigate a node tree
- nodeCompleted(Object parent, Object node), BuilderSupport hook methods / BuilderSupport hook methods
- nodeCompleted hook / BuilderSupport hook methods, A database builder
- null safe dereference operator / Null safe dereference
O
- Object getCurrent() hook / BuilderSupport hook methods
- one-to-many, associations
- about / One-to-many
- one-to-one, associations
- Customer class / One-to-one
- Address class / One-to-one
- Identity. Customer class / One-to-one
- onHandleNodeAttributes method / FactoryBuilderSupport
- onNodeCompleted method / FactoryBuilderSupport
- operator overloading, DSL / Operator overloading
- operator overloading, Groovy / Groovy operator overloading, Operator overloading
- operators, Groovy language
- about / Operators
- spread / Spread and spread-dot
- spread-dot / Spread and spread-dot
- null safe deference / Null safe dereference
- operator overloading / Operator overloading
- optional typing, Groovy / Static and optional typing, Optional syntax
- owner keyword
- about / Understanding this, delegate, and owner
- example / Understanding this, delegate, and owner
- resolving rules / Understanding this, delegate, and owner
P
- POGO class / The Grails Object Relational Mapping (GORM), Using domain classes
- POGOs
- about / POJOs and POGOs
- POJO
- about / POJOs and POGOs
- PoorMansTagBuilder.methodMissing() / ClmethodMissingosure delegate
- PoorMansTagBuilder class / invokeMethod
- prepareClosures() method / CompilerConfiguration
- pretended methods, Groovy
- about / Builder code structure, Pretended methods
- invokeMethod / invokeMethod
- PoorMansTagBuilder class / invokeMethod
- methodMissing / methodMissing
- prettyPrint() method
- about / Expandos
- programming languages
- evolution / The evolution of programming languages
- general-purpose languages / General-purpose languages
- high-level programming language / General-purpose languages
- spreadsheets / Spreadsheets and 4GLs
- 4GLs / Spreadsheets and 4GLs
- 4GL systems (4th Generation Languages) / Spreadsheets and 4GLs
- 3GL systems (3rd Generation Languages) / Spreadsheets and 4GLs
Q
- querying
- about / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- list method / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- get() method / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- getAll() method / inheritance relationship, GORMmappingmapping, inheritanceaboutQuerying
- dynamic finders / Dynamic finders
- GORM, as DSL / GORM as a DSL
R
- ranges / Ranges
- regex find operator =~ / Regular expressions
- regex match operator ==~ / Regular expressions
- regex pattern operator ~String / Regular expressions
- regular expressions, Groovy language / Regular expressions
- regex find operator =~ / Regular expressions
- regex pattern operator ~String / Regular expressions
- regex match operator ==~ / Regular expressions
- regular expression support, Groovy / Regular expression support
- resolve strategy
- about / How Builders work
- OWNER_FIRST / How Builders work
- DELEGATE_FIRST / How Builders work
- OWNER_ONLY / How Builders work
- DELEGATE_ONLY / How Builders work
- TO_SELF / How Builders work
- Reward
- types / Reward types
- DSL / The Reward DSL
- RewardScript class / CompilerConfiguration
- Rewards DSL
- building / Building a Rewards DSL
- RewardService, event hook methods
- applyRewardsOnConsume / The RewardService class
- applyRewardsOnPurchase / The RewardService class
- applyRewardsOnUpgrade / The RewardService class
- RewardService class / The RewardService class
- about / Interfaces in Java and Groovy
- root() method / Resolve Strategy: OWNER_FIRST
S
- @Sputnik / Spock
- SalesOrder classes / One-to-many
- save method / Using domain classes
- SAXBuilder
- about / Builders for every occasion
- Script.evaluate() method
- about / Adding built-in methods
- Script.getBinding() method
- about / Adding built-in methods
- search method
- about / Adding a command-line interface
- setChild method / FactoryBuilderSupport
- setClasspath method / CompilerConfiguration
- setCurrent(Object current) hook / BuilderSupport hook methods
- setDebug method / CompilerConfiguration
- setFirstName() method / POJOs and POGOs
- setOutput method
- about / CompilerConfiguration
- setParent(Object parent, Object child), BuilderSupport hook methods / BuilderSupport hook methods
- setParent call / BuilderSupport hook methods
- setParent hook / A database builder
- setParent method / A database builder, FactoryBuilderSupport
- setProperty() method / GSpec
- setUp method / Testing with GroovyTestCase
- setVariable / Groovy bindings
- shebang scripts / Shebang scripts
- shell command
- about / Adding a command-line interface
- shorthand, Groovy language
- assumed imports / Assumed imports
- visibility, default / Default visibility, optional semicolon
- semicolon, optional / Default visibility, optional semicolon
- parenthesis, optional / Optional parentheses and types
- return keyword, optional / Optional return keyword
- properties and GroovyBeans / Properties and GroovyBeans
- should_be property accessor / GSpec
- should_equal method / GSpec
- should_not_be property property accessor / GSpec
- should_not_equal method / GSpec
- Spaz
- about / Twitter
- specify() method / GSpec
- specify block / GSpec
- Spock
- spread-dot operator / Spread and spread-dot
- spread operator / Spread and spread-dot
- spreadsheet macros / Spreadsheets and 4GLs
- Spring
- using, for dependency injections / Dependency injection with Spring
- stack property / GSpec
- static typing, Groovy / Static and optional typing
- String blanked method
- about / Adding overloaded methods
- strings, Groovy language / Strings
- SwingBuilder
- about / Builders for every occasion, SwingBuilder
- pack() method / SwingBuilder
- show()method / SwingBuilder
- Twitter searching / SwingBuilder
- Griffon / Griffon: Builders as DSL
- switch statement / Switch statement
T
- target() call / Gant and AntBuilder
- TDD
- the.stack.isEmpty() == false / GSpec
- The Apache Software Foundation / Ant
- this keyword
- about / Understanding this, delegate, and owner
- example / Understanding this, delegate, and owner
- resolving rules / Understanding this, delegate, and owner
- Tweets
- about / Twitter
- Twitter
- about / Twitter
- using / Twitter
- APIs, working with / Working with the Twitter APIs
- Twitter.createFriendship method
- Twitter.directMessages method
- about / Direct messages
- Twitter.getUserDetail method
- about / Tweeting
- Twitter.sendDirectMessage method
- about / Direct messages
- Twitter.updateStatus method
- about / Tweeting
- Twitter4J
- about / Using Twitter4J Java APIs
- using / Using Twitter4J Java APIs
- downloading / Using Twitter4J Java APIs
- tweeting / Tweeting
- direct messages / Direct messages
- searching / Searching
- following concept / Following
- Twitter API
- working with / Working with the Twitter APIs
- Twitter4J, using / Using Twitter4J Java APIs
U
- use block
- about / Categories
- use keyword
- about / Categories
V
- VM interface
- about / Groovy
W
- wrappedObject.isEmpty() / GSpec
X
- xmlDeclaration() method
- about / Namespaced XML
- xUnit style testing