Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

FirstClassExport.java

Go to the documentation of this file.
00001 
00058 package com.arcle.rmt.j2se.bridge.swexport.rqml;
00059 
00060 import com.arcle.rmt.rqml.RQMLFirstClass;
00061 import com.arcle.rmt.superwaba.model.Document;
00062 import com.arcle.rmt.j2se.bridge.swexport.FirstClassExporter;
00063 import com.arcle.rmt.j2se.bridge.copy.CopierFacade;
00064 
00070 public abstract class FirstClassExport implements FirstClassExporter {
00071 
00085     public boolean export(RQMLFirstClass srcElem, Document dest) {
00086         boolean ok = false;
00087         if (acceptsInstance(srcElem)) {
00088             RQMLFirstClass dstElem = doCreateElement(dest);
00089             ok = doCopyElement(srcElem, dstElem);
00090         }
00091         return ok;
00092     }
00093 
00102     protected boolean acceptsInstance(RQMLFirstClass elem) {
00103         return getSupportedClass().isInstance(elem);
00104     }
00105 
00114     protected boolean doCopyElement(RQMLFirstClass src, RQMLFirstClass dst) {
00115         return CopierFacade.getInstance().copy(getSupportedClass(), src, dst);
00116     }
00117 
00118     //-----------------------------------------------------------------------
00119     // Abstract strategy methods
00120 
00129     protected abstract Class getSupportedClass();
00130 
00142     protected abstract RQMLFirstClass doCreateElement(Document dest);
00143 }

Generated on Fri Jun 18 19:51:20 2004 for Arcle Rambutan by doxygen 1.3.5