JML

org.jmlspecs.jmlunit.strategies
Class CloneableObjectAbstractExtensibleStrategyDecorator

java.lang.Object
  extended byorg.jmlspecs.jmlunit.strategies.AbstractExtensibleStrategyDecorator
      extended byorg.jmlspecs.jmlunit.strategies.CloneableObjectAbstractExtensibleStrategyDecorator
All Implemented Interfaces:
StrategyType
Direct Known Subclasses:
JMLTypeStrategy

public abstract class CloneableObjectAbstractExtensibleStrategyDecorator
extends AbstractExtensibleStrategyDecorator

A decorator for cloneable object strategies that allows for easy extension with cloneable test data.

This type provides an extension mechanism that is easier to use than a composite. To extend the test data, make a subclass that overrides the addData() method; this method provides the additional data for testing.

Author:
Gary T. Leavens

Field Summary
 
Fields inherited from class org.jmlspecs.jmlunit.strategies.AbstractExtensibleStrategyDecorator
 
Constructor Summary
CloneableObjectAbstractExtensibleStrategyDecorator(StrategyType strat)
           
 
Method Summary
protected  StrategyType addedDataStrategy(Object[] added)
           
abstract  Object cloneElement(Object elem)
          Return a clone of the argument.
 
Methods inherited from class org.jmlspecs.jmlunit.strategies.AbstractExtensibleStrategyDecorator
addData, iterator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CloneableObjectAbstractExtensibleStrategyDecorator

public CloneableObjectAbstractExtensibleStrategyDecorator(StrategyType strat)
Method Detail

addedDataStrategy

protected StrategyType addedDataStrategy(Object[] added)

cloneElement

public abstract Object cloneElement(Object elem)
Return a clone of the argument.


JML

JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.