info.magnolia.module.blossom.annotation
Annotation Type Area


@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface Area

Used on a Spring Web MVC controller that is a nested class (public static class) within another controller that is either annotated with @Template or in the case of an area within an area annotated with @Area.

An area has a unique name within its enclosing template or parent area. The title set using the title field is used both on the page as the displayed name of the area and as the title for the area's dialog.

An area can have configurable content that is edited by its dialog. A controller that uses this annotation automatically becomes a factory for its own dialog. This dialog is automatically assigned an id and you do not need to add the DialogFactory annotation. The functionality for creating the dialog is identical to the functionality of classes that use DialogFactory. More specifically you can use TabFactory, TabValidator, DialogValidator and TabOrder.

If you prefer using a dialog created by a DialogFactory or one configured in Magnolia you can override this behaviour by setting the 'dialog' field.

By using AvailableComponents and AvailableComponentClasses you can configure which components can be added to this area.

The type of the area controls how the area can be used with regard to if and how many components can be placed in it.

An area can be set to inherit components from areas with the same name in parent pages. This is done using Inherits. Inheritance is by default set to inherit all components with a property inheritable set to true (filtered mode). Inheritance can also be enabled for properties on the area making it possible for settings on the area itself to take effect on sub-pages.

An optional area is an area that the page author can decide to use or not. The area won't be rendered unless the page author explicitly creates it on the page.

You can use I18nBasename to specify which resource bundle should be used for localization of the area's title and description.

Since:
2.0
See Also:
AvailableComponents, AvailableComponentClasses, Inherits, TabOrder, TabFactory, TabValidator, DialogValidator, Available, I18nBasename, DialogFactory

Required Element Summary
 String value
          Name of the area.
 
Optional Element Summary
 String dialog
          Id of a dialog to be used for this area.
 TernaryBoolean optional
          Whether this area is optional or not.
 String title
           
 AreaType type
          The type of area.
 

Element Detail

value

public abstract String value
Name of the area.

title

public abstract String title
Default:
""

dialog

public abstract String dialog
Id of a dialog to be used for this area. By default the controller itself will be responsible for creating the dialog.

Default:
""

type

public abstract AreaType type
The type of area.

Default:
info.magnolia.module.blossom.annotation.AreaType.LIST

optional

public abstract TernaryBoolean optional
Whether this area is optional or not.

Default:
info.magnolia.module.blossom.annotation.TernaryBoolean.UNSPECIFIED


Copyright © 2009-2012 Magnolia International Ltd.. All Rights Reserved.