[Newbies] set variables before initialize and write out
files before exit
Ron Teitelbaum
ron at usmedrec.com
Fri Jun 10 17:56:23 UTC 2016
Hi Joe,
I'm not sure in what context you mean. Why wouldn't you run this in the
#initialize method?
JoeAccountingParser class>>configure
InPath := '/Users/jja/Desktop/accountingfiles/'.
OutPath := '/Users/jja/Desktop/accountingfiles processed/'.
JoeAccountingParser >>initialize
self class configure.
fileParser := FileParser new.
fileParser inPath: self class InPath.
fileParser outPath: self class OutPath.
JoeAccountingParser class >> process: aFile
^(self new) process: aFile; yourself.
JoeAccountingParser process: aFile
fileParser readThis: aFile.
fileParser process.
fileParser write.
This is a bit refactored and it uses the configure method I recommend to you
earlier. This configure method could be anything including a method to read
an external file for details.
Solutions like a factory method pattern come to mind if you don't want to
use #initialize.
JoeAccountingParser class >> process: aFile from: inPath to: outPath
There is also Behavior #startUp and #shutDown on the class side.
See Smalltalk #addToStartUpList: #addToShutDownList:
These fire when an image is started or shutdown.
I think a bit more explanation of what problem you are having is needed.
All the best,
Ron Teitelbaum
> From: Joseph Alotta
> Sent: Friday, June 10, 2016 12:23 PM
>
> Greetings,
>
> My object needs to have some variables set before it can run the
initialize
> method and also it needs to have run an exit method.
>
> f := FileParser new.
> f inPath: '/Users/jja/Desktop/accountingfiles/'.
> f readThis: 'rei mastercard.csv'.
> f process
> f outPath: '/Users/jja/Desktop/accountingfiles processed/'.
> f write.
>
>
> Is there a better way to do this?
>
> Sincerely,
>
> Joe.
>
>
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
More information about the Beginners
mailing list