Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.sun.syndication.feed.impl
Class CloneableBean

    java.lang.Object
      com.sun.syndication.feed.impl.CloneableBean

All Implemented Interfaces:
  Serializable, Cloneable

    public class CloneableBean

extends Object
implements Serializable, Cloneable

Provides deep Bean clonning support.

It works on all read/write properties, recursively. It support all primitive types, Strings, Collections, Cloneable objects and multi-dimensional arrays of any of them.

Author:
  Alejandro Abdelnur
See Also:
  Serialized Form

Constructor Summary
`protected` | `CloneableBean()` Default constructor.
`` | `CloneableBean(Object obj)` Creates a CloneableBean to be used in a delegation pattern.
`` | `CloneableBean(Object obj, Set ignoreProperties)` Creates a CloneableBean to be used in a delegation pattern.

Method Summary
`Object` | `beanClone()` Makes a deep bean clone of the object passed in the constructor.
`Object` | `clone()` Makes a deep bean clone of the object.

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CloneableBean

    protected CloneableBean()

  Default constructor.

  To be used by classes extending CloneableBean only.

### CloneableBean

    public CloneableBean(Object obj)

  Creates a CloneableBean to be used in a delegation pattern.

  For example:

  `public class Foo implements Cloneable { private CloneableBean _cloneableBean; public Foo() { _cloneableBean = new CloneableBean(this); } public Object clone() throws CloneNotSupportedException { return _cloneableBean.beanClone(); } }`

  Parameters:
    `obj` - object bean to clone.

### CloneableBean

    public CloneableBean(Object obj,
                         Set ignoreProperties)

  Creates a CloneableBean to be used in a delegation pattern.

  The property names in the ignoreProperties Set will not be copied into the cloned instance. This is useful for cases where the Bean has convenience properties (properties that are actually references to other properties or properties of properties). For example SyndFeed and SyndEntry beans have convenience properties, publishedDate, author, copyright and categories all of them mapped to properties in the DC Module.

  Parameters:
    `obj` - object bean to clone.
    `ignoreProperties` - properties to ignore when cloning.

Method Detail

### clone

    public Object clone()
                 throws CloneNotSupportedException

  Makes a deep bean clone of the object.

  To be used by classes extending CloneableBean. Although it works also for classes using CloneableBean in a delegation pattern, for correctness those classes should use the

  Overrides:
    `clone` in class `Object`
  Returns:
    a clone of the object bean.
  Throws:
    `CloneNotSupportedException` - thrown if the object bean could not be cloned.
  See Also:
    `beanClone method.

    `

### beanClone

    public Object beanClone()
                     throws CloneNotSupportedException

  Makes a deep bean clone of the object passed in the constructor.

  To be used by classes using CloneableBean in a delegation pattern,

  Returns:
    a clone of the object bean.
  Throws:
    `CloneNotSupportedException` - thrown if the object bean could not be cloned.
  See Also:
    `constructor.`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004-2013 ROME Project. All Rights Reserved.