# Package groovy.util

## Package groovy.util Description

Various Groovy utilities for working with nodes, builders, logging, and other things.

- Interface Summary
  Interface | Description
  --- | ---
  BufferedIterator | An iterator that allows examining the next element without consuming it.
  Factory |
  IFileNameFinder |
  ObjectGraphBuilder.ChildPropertySetter | Strategy for setting a child node on its parent.
  ObjectGraphBuilder.ClassNameResolver | Strategy for resolving a classname.
  ObjectGraphBuilder.IdentifierResolver | Strategy for picking the correct synthetic identifier.
  ObjectGraphBuilder.NewInstanceResolver | Strategy for creating new instances of a class.
  ObjectGraphBuilder.ReferenceResolver | Strategy for picking the correct synthetic reference identifier.
  ObjectGraphBuilder.RelationNameResolver | Strategy for resolving a relationship property name.
  ResourceConnector | Base interface for customizing where resources can be found for the `GroovyScriptEngine`.

- Class Summary
  Class | Description
  --- | ---
  AbstractFactory |
  BuilderSupport | Base class for creating arbitrary nested trees of objects or events.
  CharsetToolkit | Utility class to guess the encoding of a given text file.
  ClosureComparator | A Comparator which uses a closure to compare 2 values being equal
  ConfigBinding | Since Groovy Script doesn't support overriding setProperty, we use a trick with the Binding to provide this functionality
  ConfigObject | A ConfigObject at a simple level is a Map that creates configuration entries (other ConfigObjects) when referencing them.
  ConfigSlurper | ConfigSlurper is a utility class for reading configuration files defined in the form of Groovy scripts.
  DelegatingScript | Script that performs method invocations and property access like Closure does.
  Eval |
  Expando | Represents a dynamically expandable bean.
  FactoryBuilderSupport | Mix of BuilderSupport and SwingBuilder's factory support.
  FileNameByRegexFinder | Find files according to a base directory and an includes and excludes pattern.
  FileTreeBuilder | A builder dedicated at generating a file directory structure from a specification.
  GroovyCollections | A Collections utility class
  GroovyScriptEngine | Specific script engine able to reload modified scripts as well as dealing properly with dependent scripts.
  IndentPrinter | A helper class for printing indented text.
  MapEntry | A Map.Entry implementation.
  Node | Represents an arbitrary tree node which can be used for structured metadata or any arbitrary XML-like tree.
  NodeBuilder | A helper class for creating nested trees of Node objects for handling arbitrary data
  NodeList | A List implementation which is returned by queries on a Node which provides some XPath like helper methods for GPath.
  NodePrinter | A helper class for creating nested trees of data
  ObjectGraphBuilder | A builder for creating object graphs.
  ObjectGraphBuilder.DefaultChildPropertySetter | Default impl that calls parent.propertyName = child If parent.propertyName is a Collection it will try to add child to the collection.
  ObjectGraphBuilder.DefaultClassNameResolver | Default impl that capitalizes the classname.
  ObjectGraphBuilder.DefaultIdentifierResolver | Default impl, always returns 'id'
  ObjectGraphBuilder.DefaultNewInstanceResolver | Default impl that calls Class.newInstance()
  ObjectGraphBuilder.DefaultReferenceResolver | Default impl, always returns 'refId'
  ObjectGraphBuilder.DefaultRelationNameResolver | Default impl that returns parentName and childName accordingly.
  ObjectGraphBuilder.ReflectionClassNameResolver | Build objects using reflection to resolve class names.
  ObservableList | List decorator that will trigger PropertyChangeEvents when a value changes.
  ObservableList.ElementAddedEvent |
  ObservableList.ElementClearedEvent |
  ObservableList.ElementEvent |
  ObservableList.ElementRemovedEvent |
  ObservableList.ElementUpdatedEvent |
  ObservableList.MultiElementAddedEvent |
  ObservableList.MultiElementRemovedEvent |
  ObservableMap | Map decorator that will trigger PropertyChangeEvents when a value changes.
  ObservableMap.MultiPropertyEvent |
  ObservableMap.PropertyAddedEvent |
  ObservableMap.PropertyClearedEvent |
  ObservableMap.PropertyEvent |
  ObservableMap.PropertyRemovedEvent |
  ObservableMap.PropertyUpdatedEvent |
  ObservableSet | Set decorator that will trigger PropertyChangeEvents when a value changes.
  ObservableSet.ElementAddedEvent |
  ObservableSet.ElementClearedEvent |
  ObservableSet.ElementEvent |
  ObservableSet.ElementRemovedEvent |
  ObservableSet.MultiElementAddedEvent |
  ObservableSet.MultiElementRemovedEvent |
  OrderBy | A helper class for sorting objects via a closure to return the field or operation on which to sort.
  PermutationGenerator | Systematically generate permutations.
  Proxy | Dynamic groovy proxy for another object.
  ProxyGenerator | Classes to generate 'Proxy' objects which implement interfaces, maps of closures and/or extend classes/delegates.

- Enum Summary
  Enum | Description
  --- | ---
  ObservableList.ChangeType |
  ObservableMap.ChangeType |
  ObservableSet.ChangeType |

- Exception Summary
  Exception | Description
  --- | ---
  ResourceException |
  ScriptException |