|
Thanks a MILLION, Fred! This makes sense and even worked like a charm! It's pretty amazing stuff! Brad > -----Original Message----- > From: Fred Kulack [mailto:kulack@us.ibm.com] > Sent: Friday, March 16, 2001 5:03 PM > To: JAVA400-L@midrange.com > Subject: RE: HTML to XML, vice versa > > > > Ah... You are about to see the light. That method's code is > hard to think > about > because its only a method definition, NOT any code. > > Yank all the stuff you had in your FieldFormatter class OUT, > and change FieldFormatter to an "interface". > Create XMLFieldFormatter and HTMLFieldFormatter that 'implements' > FieldFormatter. > Put the code that was in FieldFormatter into the appropriate > *FieldFormatter > object and create the other one with new code. > i.e. > the toML() method in FieldFormatter. Only looks like a > function prototype, > it contains no code, and is only used to call the derived class. > > Suddenly, polymorphism! > User code: > Field obj = new Field(); > obj.setFormatter(new XMLFieldFormatter()); > OR > obj.setFormatter(new HTMLFieldFormatter()); > String theString = obj.toML(); > > public interface FieldFormatter { > public String toML(); /* note, no code in an interface */ > } > > public class HTMLFieldFormatter implements FieldFormatter { > public String toML() { > return "<p>" + blah + </p>; > } > } > > public class XMLFieldFormatter implements FieldFormatter { > public String toML() { > return "<xml>" + blah + "</xml>"; > } > } > > public class Field { > protected FieldFormatter formatter = null; (not sure if > this is correct) > ... > public void setFormatter(FieldFormatter fieldFormatter) { > formatter = fieldFormatter; > } > public String toML() { > return formatter.toML(); > } > } > > > > "The stuff we call "software" is not like anything that human society > is used to thinking about. Software is something like a machine, and > something like mathematics, and something like language, and > something like thought, and art, and information... > but software is not in fact any of those other things." > Bruce Sterling - The Hacker Crackdown > > Fred A. Kulack - AS/400e Java and Java DB2 access, Jdbc, > JTA, etc... > IBM in Rochester, MN (Phone: 507.253.5982 T/L 553-5982) > mailto:kulack@us.ibm.com Personal: mailto:kulack@bresnanlink.net > AOL Instant Messenger: Home:FKulack Work:FKulackWrk > > +--- > | This is the JAVA/400 Mailing List! > | To submit a new message, send your mail to JAVA400-L@midrange.com. > | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. > | To unsubscribe from this list send email to > JAVA400-L-UNSUB@midrange.com. > | Questions should be directed to the list owner: joe@zappie.net > +--- > +--- | This is the JAVA/400 Mailing List! | To submit a new message, send your mail to JAVA400-L@midrange.com. | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. | To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com. | Questions should be directed to the list owner: joe@zappie.net +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.