Smalltalk User Meeting in Hamburg (September)

A date for the next Hamburg Smalltalk user meeting is about to be selected:

Select a date

Posted in Smalltalk | Tagged , , , | Leave a comment

PUM 8.6.1 – 02.06.22

New version out with small points:

Topaz/Gemstone

-> accessMethod created in service class to have direct access to the root of the persistency tree of the data – to unify the programming style among several projects

-> sessionID method created in the service class – needed for the lower level framework. I noticed this problem, while starting a new project. This was a little bit trickier, because the system has to look for all :n associations in the model and find out, where the sessions are really handled

Posted in Smalltalk | Tagged , , , | Leave a comment

Smalltalk Inspect 029 – Update: Smalltalk under the Pi

A new episode of SmalltalkInspect is available:

Smalltalk under the Pi

Marten

Posted in Smalltalk | Tagged , , , , , , | Leave a comment

PUM 08.06.01 – 02.06.20

Again re-arrangements in the Gemstone/Topaz Generator

-> CookieName and CookiePath is now defined on project level
-> Each versioned API definition HAS to use the project cookie settings
-> method “cookiePath” is now created at the project session-class side

Posted in Smalltalk | Tagged , , | Leave a comment

PUM 08.06.01 – 02.06.18

Several bugs fixed in the meantime in the Topaz code generator.

I added a 0:n/1:n association contruct in the modelling tool to allow the usage of instances of RcQueue (good structure for shared system) in the model. The RcQueue models the :n construct. But due to the RcQueue restrictions you can not break the association by setting the :1 side to nil – because its not possible to remove an item somewhere in the queue. Only the first item can be removed … therefore several other methods had to be created:

* remove – removes an item from the queue and clears the association
* add: – adds an item to the queue and set the association

Posted in Smalltalk | Tagged , , | Leave a comment

PUM 08.06.01-02.06.09

I had to prepare a new version, because I had to change the order of code generation in the Gemstone REST System – the enumeration part is now devided in two parts:

a) first part – only class creation code
b) second part – method creation code

A new project showed this problem …

Posted in Smalltalk | Tagged , | Leave a comment

PUM, Gemstone and SearchPath definitions

In our Gemstone projects we have used the same strategy: the data is located in a tree structure – started from a root. We have no large structure (e.g. index bag) where one simple lookup will find the object.

During REST calls we therefore have the need to find the objects in that tree structure.

This is – how I call it – a search path. The search path goes from the root via several multiple-/single-cardinality associations and leads us to the object we are are looking for.

The parameter of the REST calls therefore has to deliver the needed ids to find the objects in the numerous multiple-cardinality associations contained in the search path.

PUM now allows to define searchPath attributes (normally in the project class, where the data root is located) and it creates the needed access methods in various classes.

Posted in Smalltalk | Tagged , , , | Leave a comment