Overview | Package | Class | Deprecated | Index | Help
| Groovy 1.7.0
| FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

## groovy.lang
Annotation Type Singleton

    java.lang.Object
      groovy.lang.Singleton

    @Retention(RetentionPolicy.SOURCE)
    @Target({ElementType.TYPE})
    @GroovyASTTransformationClass("org.codehaus.groovy.transform.SingletonASTTransformation")
    @interface Singleton

Class annotation to make class singleton. Singleton can be initialized in static initialization of the class or lazily (on first access) To make singleton lazy it is enough to use `@Singleton(lazy=true)` Lazy singletons implemented with double check locking and volatile field

author:
  Alex Tkachman

Optional Element Summary
`boolean` | `lazy`

Method Summary

Methods inherited from class Object
wait, wait, wait, hashCode, getClass, equals, toString, notify, notifyAll

Element Detail

### lazy

    boolean lazy

  return:
    if this singleton should be lazy
  default:
    false

Copyright © 2003-2009 The Codehaus. All rights reserved.