Yep, that's correct. Although, there's nothing that says it is necessarily a singleton. You might actually have multiple instances active with the static method selecting the correct one to use based on some criteria you define.
Rick On Mon, Aug 11, 2008 at 10:46 AM, David Crayford <[EMAIL PROTECTED]> wrote: > ok, I think I get it. What you suggesting is an implementation that uses > the singleton pattern delegated from the > static methods already in place, right? > > Rick McGuire wrote: >> Yes, but the class with the static methods is still the starting >> point. Replaceable classes with static methods were chosen for these >> interfaces because they allow an implementation a lot more flexibility >> in how things get implemented, including the use of inline methods, if >> appropriate. So, the z/OS version of SysFileSystem would probably >> have methods that looked like this: >> >> bool SysFileSystem::searchFileName(const char *name, char *fullName) >> { >> return getInstance()->searchFileName(name, fullName); >> } >> >> Where the instance returned would be a subclass of your base virtual >> class. Then this is a matter of just adjusting the build to pick up >> your version of SysFileSystem rather than the base unix one. >> >> Rick >> >> On Mon, Aug 11, 2008 at 10:19 AM, David Crayford <[EMAIL PROTECTED]> wrote: >> >>> That's an excellent idea! Are you suggesting implementing the delegate >>> design pattern? In which case >>> an abstract base class of pure virtual functions (Java interface) would >>> be required or implementing >>> z/OS platform code to the source tree. >>> >>> Rick McGuire wrote: >>> >>>> I think the approach here would be to have the SysFileSystem class >>>> remain the interface between the portable code and the platform, and >>>> have its method delegate to a specific pluggable instance. >>>> >>>> Rick >>>> >>>> On Mon, Aug 11, 2008 at 9:59 AM, David Crayford <[EMAIL PROTECTED]> wrote: >>>> >>>> >>>>> ooRexx seems to only handle one type of file system based on the >>>>> platform. On my system (z/OS) there are different file systems depending >>>>> on the runtime environment. We have a UNIX file system and a traditional >>>>> mainframe filesystem using PDS data sets. There is also a UNIX like file >>>>> system in CICS. The SysFileSystem class is static, what I really need is >>>>> a SysFileSystem factory or different builds depending on where I >>>>> want to deploy. Any suggestions? I'm jumping the gun here a bit as I'm >>>>> only just starting to code in anger, but it's a concern... >>>>> >>>>> ------------------------------------------------------------------------- >>>>> This SF.Net email is sponsored by the Moblin Your Move Developer's >>>>> challenge >>>>> Build the coolest Linux based applications with Moblin SDK & win great >>>>> prizes >>>>> Grand prize is a trip for two to an Open Source event anywhere in the >>>>> world >>>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >>>>> _______________________________________________ >>>>> Oorexx-devel mailing list >>>>> Oorexx-devel@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>>>> >>>>> >>>>> >>>> ------------------------------------------------------------------------- >>>> This SF.Net email is sponsored by the Moblin Your Move Developer's >>>> challenge >>>> Build the coolest Linux based applications with Moblin SDK & win great >>>> prizes >>>> Grand prize is a trip for two to an Open Source event anywhere in the world >>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >>>> _______________________________________________ >>>> Oorexx-devel mailing list >>>> Oorexx-devel@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>>> >>>> >>>> >>> ------------------------------------------------------------------------- >>> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge >>> Build the coolest Linux based applications with Moblin SDK & win great >>> prizes >>> Grand prize is a trip for two to an Open Source event anywhere in the world >>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >>> _______________________________________________ >>> Oorexx-devel mailing list >>> Oorexx-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>> >>> >> >> ------------------------------------------------------------------------- >> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge >> Build the coolest Linux based applications with Moblin SDK & win great prizes >> Grand prize is a trip for two to an Open Source event anywhere in the world >> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >> _______________________________________________ >> Oorexx-devel mailing list >> Oorexx-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >> >> > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > Oorexx-devel mailing list > Oorexx-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/oorexx-devel > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel