package student.web.internal.converters;
import java.util.UUID;
import student.web.internal.Snapshot;
import com.thoughtworks.xstream.converters.MarshallingContext;
import com.thoughtworks.xstream.converters.collections.TreeMapConverter;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
public class NullableClass
{
private UUID id;
private String nodeName;
public NullableClass( String nodeName, UUID id )
{
this.id = id;
this.nodeName = nodeName;
}
public UUID getID()
{
return id;
}
public String getNodeName()
{
return nodeName;
}
public void writeHiddenClass(
TreeMapConverter mapConverter,
HierarchicalStreamWriter writer,
MarshallingContext context )
{
if ( Snapshot.getLocal().getFieldSetFromId( id ) != null )
{
writer.startNode( nodeName );
writer.addAttribute( XMLConstants.ID_ATTRIBUTE, id.toString() );
writer.addAttribute( XMLConstants.FIELDSET_ATTRIBUTE, "true" );
mapConverter.marshal( Snapshot.getLocal().getFieldSetFromId( id ),
writer,
context );
writer.endNode();
}
}
}