No, it just means you need to provide your own implementation of
SysFileSystem as part of the z/OS build.  If it's apparent that you
can still end up sharing code with the unix version, then we could
considering refactoring the unix implementation a bit so that the code
is common.  I think for a first pass, however, you might want to take
the copy/modify approach.

Rick

On Mon, Aug 11, 2008 at 11:11 AM, David Crayford <[EMAIL PROTECTED]> wrote:
> Yep, your absolutely spot on. On z/OS the file path syntax determines
> the file system. For example the following C
> code detects the file system in a POSIX enviroment:
>
> /* for a PDS data set */
> fopen( "//'ZOS.PDS.DSN(REXX)'", ... )
>
> /* for a UNIX file */
> fopen( "/u/hfs/exec.rex", ... )
>
> The // prefix signifies a z/OS file. So parsing the file path should be
> a snack!
>
> Thanks Rick, I think we have a solution. Does this mean changing the
> current design for SysFileSystem?
>
> Rick McGuire wrote:
>> 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
>>
>>
>
>
> -------------------------------------------------------------------------
> 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

Reply via email to