SSDS Samples Updated - w/ scripting!

2008-07-18 @ 23:19#

2008-07-20 update

i posted an update for the SSDS.EXE app that alters the command-line syntax. now, the URL appears first with the HTTP Method second (or optional in the case of GET). This makes it a much friendlier app [grin].

ssds /my-authority/fish
ssds /my-authority/fish/ post fish-002.xml
ssds /my-authority/fish/fish-002 delete
ssds /my-authority/fish/ 

i just updated my SSDS Examples project (via Codeplex and GoogleCode. This latest update has two new 'cool' features:

  1. a single /ssds-proxy/ end-point for all communications
  2. a console app (SSDS.EXE) that you can use the interact with your data in the cloud

The /ssds-sproxy/ end-point means that all kinds of cool MSFT data cloud apps can be written against a single REST API. Why use a proxy when you can just address the could servers directly? well, first, this proxy provides caching services and ETag checking on PUT that the current MSFT beta does not (soon to be fixed in the next release). second, this proxy supports cookie-based Basic Authentication instead of just HTTP Basic Auth. that makes it friendlier for browser-based and AIR (i.e. Silverlight) clients. third, since the current release of SSDS does not offer a way to generate guaranteed unique IDs, the proxy does this for you. that way, even clients from several different locations will be sure to never create records with the same ID. finally, it's just a fun thing to do, ok [grin]?

the console app was a fun thing i whipped up this week to make it easy to test out the proxy end-point. the result is a pretty sweet demo app that makes it really easy to interact w/ the SSDS data. you can even use this console app to support scripting against SSDS. here's a simple example script i included in the demo ZIP:

@echo off
rem script ssds console 

ssds get    /my-authority
ssds post   /my-authority/fish
ssds get    /my-authority/fish
ssds post   /my-authority/fish/ fish-001.xml
ssds post   /my-authority/fish/ fish-002.xml
ssds get    /my-authority/fish/ 
ssds get    /my-authority/fish/fish-001 
ssds delete /my-authority/fish/fish-002
ssds get    /my-authority/fish/

rem ##eof##

there are lots of possible uses of the command-line interface for SSDS. and the proxy end-point can turn into a very handy utility service for future SSDS applications.

of course, it's all fun stuff to play with, too[grin]!

SDS