00001 00066 package com.arcle.rmt.superwaba.model.imp.rqml; 00067 00068 import superwaba.ext.xplat.io.DataStream; 00069 import superwaba.ext.xplat.io.Storable; 00070 00071 import com.arcle.rmt.rqml.*; 00072 00079 public abstract class StringOnlyImpl extends RQMLSecondClassImpl 00080 implements StringOnly { 00081 00082 //----------------------------------------------------------------------- 00083 // StringOnly Implementation 00084 00085 public String getString() { 00086 return theString; 00087 } 00088 00089 00090 public void setString(String PCDATA) { 00091 theString = PCDATA; 00092 } 00093 00094 //----------------------------------------------------------------------- 00095 // Member Variables 00096 00097 private String theString = ""; 00098 00099 //----------------------------------------------------------------------- 00100 // Inner Classes 00101 00102 protected static abstract class Memento extends RQMLSecondClassImpl.Memento { 00103 public Memento(StringOnlyImpl originator) { 00104 super(originator); 00105 } 00106 00107 public void saveState(DataStream data) { 00108 super.saveState(data); 00109 final StringOnlyImpl org = (StringOnlyImpl) getOriginator(); 00110 data.writeString(org.theString); 00111 } 00112 00113 00114 public void loadState(DataStream data) { 00115 super.loadState(data); 00116 final StringOnlyImpl org = (StringOnlyImpl) getOriginator(); 00117 org.theString = data.readString(); 00118 } 00119 } 00120 00121 00122 }