At the ESUG Conference in Köln we presented (slides, video) StAP, an insurance application largely newly written in VA Smalltalk. Since then we've been working on moving the application to the AWS cloud involving the transition from Windows to Linux. That process is still going on in a so far relatively straightforward manner. At the same time, moving to the cloud brings the need for various new functionalities and utilising Amazon Simple Storage Service (S3) buckets is one of them.

We were obviously aware of the works of Jan van de Sandt who created the Pharo AWS Toolbox that includes an implementation of an integration of S3 buckets in Pharo. We decided to give it a go and started trying to port the code to VA Smalltalk.

So, as happens these days, Vince Mecking and I have been pair-programming a couple of afternoons from our respective homes. With Vince in the driver's seat and me doing my part at the other end. My part mostly being offering suggestions, helping to keep focus and dropping distractions. All at (in)appropriate times, you can imagine.

The biggest issue we run into was how to deal with the Zinc dependency. Zinc is the name of the Pharo http stack and it is rather different from what VA Smalltalk offers in this department. Basically we had two options:

  • rewrite all Zinc related code and make future upstream work more difficult or
  • create an adapter to make Zinc-based applications easier to port to VA Smalltalk.

We choose the second option. We made a Zinc client adapter that implements parts of the Zinc client api’s on top of the VA Smalltalk http stack. It does not implement everything what Zinc is capable of, but it does all what is needed to make the S3 bits of the Pharo AWS Toolbox, including the AWS Core part of it, work in VA Smalltalk. This Zinc client adapter can be made more complete for other projects' needs. Currently is has no tests of its own, but depends for it's reliability on the tests of the AWS Core and S3 code.

The code is available at the brand new VAST Community Hub: https://github.com/vast-community-hub/aws-toolbox-vast.

Posted by Adriaan van Os at 14 June 2020, 9:53 pm with tags VAST, VASmalltalk, AWS, Zinc link
© 2004-2020 Adriaan van Os  -  [ | ] Powered by Smalltalk (Squeak/Seaside/Magritte/Pier)  -  Served by Apache  -  Hosted on eComStation