<div dir="auto"><div>Comments inline below.<br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, May 22, 2023, 18:53 Greg Spehar via GemStone-Smalltalk <<a href="mailto:gemstone-smalltalk@lists.gemtalksystems.com">gemstone-smalltalk@lists.gemtalksystems.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">GemStone Smalltalk Team,<div><br></div><div>Apologies for this request, I am building out a new system that will run on top of GS/S.</div><div>I have run into two items that I was hoping to better understand:</div><div><br></div><div>1) Class Structure in GemStone/S</div><div>2) Use of GsProcess</div><div><br></div><div>#1 - Class Structure</div><div><br></div><div>It would seem that I am not able to create a Subclass of a Class that I created. An example would be Object -> BaseObject -> Account.</div><div>The BaseObject will hold a number of management items (DateCreated, UUID, DateModified, etc.) that I want for all of my Operational Objects (Accounts, Networks, Transactions, etc.).</div><div>But for the life of me the GemStone/S product will not allow me to do the third level. I am not able to SubClass from BaseObject.</div><div>(I am sure it is something that I am not doing right, I am able to Subclass from Object no problem) Could this be because I am using the Community Edition?</div><div>Any recommendation would be great. At the moment I am stuffing an instance of the BaseClass into my object (Account) which is not ideal...</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">GemStone uses the same kind of class creation expression common to most, if not all, Smalltalk implementations.</div><div dir="auto"><br></div><div dir="auto">There are no limitations like that in the community edition. Show us what you have tried.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space"><div><br></div><div>#2 - Use of GsProcess</div><div><br></div><div>Does someone have a good paper on the use of GsProcess? I am looking to have it run in a separate Gem on a timer clearing a bucket of Log Entries from my system.</div><div>I have been able to setup the Log levels and get all that working, but when I launch the GsProcess and put a timer in there, it just sits there. And of course if I do an Abort or Commit, it complains or the Process disappears.</div><div>Additionally, I am concerned about just dropping it on the floor and creating too many of these active sessions. (I suspect it will eventually destabilize the image.)</div><div>So anyway, it should sit there and just run every 5 min, looking at the Rc Collection and doing it’s thing dumping the contents to the log file location I created… And ending gracefully once I tell it to shut down...</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">GsProcess is not a good choice. The scheduler only runs processes in the gem while a request from the client is running.</div><div dir="auto"><br></div><div dir="auto">Your description suggests GsExternalProcess would be the correct choice. I'm typing on my phone, so the exact class name may be slightly different than that. I've used that technique extensively for parallel work processing.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space"><div><br></div><div>I know these are rookie questions… but have hit a wall on figuring it out. (Even ChatGPT has no idea what to do…)</div><div><br></div><div>Regards,<br><div>
<div dir="auto" style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;word-wrap:break-word;line-break:after-white-space"><div><div><div><b style="font-size:11px">Greg Spehar, MBA, PMP, ACP, DASM</b></div><div><b style="font-size:11px">Senior Program Manager</b></div><div><div><span style="font-size:11px">-------------------------------------------------------------------------------------------------------</span></div><div><span style="font-size:11px"><b>P:</b> 503.332.3663</span></div><div><b style="font-size:11px">E:  </b><a href="mailto:spehargreg@gmail.com" style="font-size:11px" target="_blank" rel="noreferrer">spehargreg@gmail.com</a></div></div><div><b style="font-size:11px">W: </b><a href="http://www.linkedin.com/in/spehar" style="text-align:-webkit-auto;font-size:11px" target="_blank" rel="noreferrer">http://www.linkedin.com/in/spehargreg</a></div></div><div><b style="font-size:11px">T:</b><span style="font-size:11px"> @spehargreg</span></div><div><span style="font-size:11px"><b>C:</b> </span><a href="https://calendly.com/spehargreg/30-minute-meeting-connect" style="text-align:-webkit-auto;font-size:11px" target="_blank" rel="noreferrer">https://calendly.com/spehargreg/30-minute-meeting-connect</a></div></div></div></div><br></div></div>_______________________________________________<br>
GemStone-Smalltalk mailing list<br>
<a href="mailto:GemStone-Smalltalk@lists.gemtalksystems.com" target="_blank" rel="noreferrer">GemStone-Smalltalk@lists.gemtalksystems.com</a><br>
<a href="https://lists.gemtalksystems.com/mailman/listinfo/gemstone-smalltalk" rel="noreferrer noreferrer" target="_blank">https://lists.gemtalksystems.com/mailman/listinfo/gemstone-smalltalk</a><br>
</blockquote></div></div></div>