My Amazon Web Services Programming with Delphi CodeRageX session

by Oct 13, 2015

In a moment my "Amazon Web Services with Delphi" CodeRage X session is starting. I'm very excited and the sessions so far were very good. It is still 2 and half more days to go!

The source code for the demos shown during my AWS Delphi session has been uploaded to Embarcadero Code Central for you to have a look and enjoy! You can download all demos from http://cc.embarcadero.com

What is cloud computing?

"Cloud Computing"refers to the on-demand delivery of IT resources and applications via the Internet with pay-as-you-go pricing. You can think of the cloud services as a large scale, publicly accessible collection of compute, storage and networking resources. These are allocated via web service calls using HTTP protocol. In other words it is a „programmable data center” that your applications can integrate with. Cloud Computing providers such as Amazon Web Services own and maintain data centers across the globe with the network-connected hardware required for these application services, while you provision and use only what you need.

 

What is Cloud API?

Cloud API is the collection of classes that let you integrate your Delphi or C++Builder apps with cloud services like Micorosoft Azure and Amazon Web Services.

Cloud API Architecture

Accessing Amazon Web Services with Cloud API

The very first thing in order to start working with cloud services is to create an account. In case of Amazon Web Services you can do it easily at http://aws.amazon.com. There is something called a "Free Tier" where you can experiment with certain services for free for the first year. In order to access AWS securely you should also have a look at "Identity and Access Management" service (http://aws.amazon.com/iam).

Cloud API provide classes to access Amazon

  • Simple Storage Service (S3)
  • Simple Database Service (SimpleDB)
  • Simple Queue Service (SQS)

On the "Cloud" tab you can find "AmazonConnectionInfo" component that you use to enter your access credentials. In order to access specific functionality of any of the Amazon web services you need to instantiate one of the Cloud API classes that represent a given service passing to a constructor a reference to your TAmazonConnectionInfo component.

The first demo that I show during the session is "Cloud Images" that is a mobile app that integrates with S3 for storing images taken with a camera and SimpleDB for storing references to them. I'm also showing "CloudAPITest" demo that comes with installation of RAD Studio 10 "Seattle" and illustrates calling all supported methods on these classes.

Cloud API for Amazon Web Services

Extending Cloud API

The next step is to use Cloud API to access services that are not supported out-of-the-box. I'm showing how to do it on the example of the Amazon Simple Notification Service (SNS) that let you send notifications using different protocols including email, http and even mobile push notifications.

Extending Cloud API to support Amazon SNS

The full source code of my Amazon Web Services Delphi CodeRage X demos is available from http://cc.embarcadero.com