net.fortuna.ical4j.model.component

## Class XComponent

- java.lang.Object
- - net.fortuna.ical4j.model.Component
  - - net.fortuna.ical4j.model.component.CalendarComponent
    - - net.fortuna.ical4j.model.component.XComponent

All Implemented Interfaces:
  Serializable

    public class XComponent
    extends CalendarComponent

$Id$ Created on 3/11/2005 Implementation of an experimental component as defined in RFC2445.

Author:
  Ben Fortuna
See Also:
  Serialized Form

### Field Summary

### Fields inherited from class net.fortuna.ical4j.model.component.CalendarComponent

`EMPTY_VALIDATOR`

### Fields inherited from class net.fortuna.ical4j.model.Component

`AVAILABLE, BEGIN, END, EXPERIMENTAL_PREFIX, VALARM, VAVAILABILITY, VEVENT, VFREEBUSY, VJOURNAL, VTIMEZONE, VTODO, VVENUE`

### Constructor Summary

Constructors
Constructor and Description
`XComponent(String name)` Creates a new experimental component with the specified name.
`XComponent(String name, PropertyList properties)` Creates a new experimental component with the specified name and properties.

### Method Summary

Methods
`protected Validator` `getValidator(Method method)`
`void` `validate(boolean recurse)` Perform validation on a component.

### Methods inherited from class net.fortuna.ical4j.model.component.CalendarComponent

`validate, validateAdd, validateCancel, validateCounter, validateDeclineCounter, validatePublish, validateRefresh, validateReply, validateRequest`

### Methods inherited from class net.fortuna.ical4j.model.Component

`calculateRecurrenceSet, copy, equals, getName, getProperties, getProperties, getProperty, hashCode, toString, validate, validateProperties`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### XComponent

    public XComponent(String name)

Creates a new experimental component with the specified name.

Parameters:
  `name` - the name of the experimental component

#### XComponent

    public XComponent(String name,
              PropertyList properties)

Creates a new experimental component with the specified name and properties.

Parameters:
  `name` - the name of the experimental component
  `properties` - a list of properties

### Method Detail

#### validate

    public final void validate(boolean recurse)
                        throws ValidationException

Perform validation on a component.

Specified by:
  `validate` in class `Component`
Parameters:
  `recurse` - indicates whether to validate the component's properties
Throws:
  `ValidationException` - where the component is not in a valid state

#### getValidator

    protected Validator getValidator(Method method)

Specified by:
  `getValidator` in class `CalendarComponent`
Parameters:
  `method` - a method to validate on
Returns:
  a validator for the specified method or null if the method is not supported