Live Framework and Mesh-Enabled-Web-Applications ( MEWAs )

I’ve been experimenting with trying to take the code that I wrote here and move it into a Mesh-Enabled-Web-Application ( MEWA ) written with Silverlight.

I can write a MEWA either with Silverlight or with HTML and Javascript and there are libraries to assist in talking to the Live Framework either way.

I instantly get stuck in terminology. It seems to me that I have a number of different kinds of applications now;

  • desktop – this is an application built against the full .NET Framework (3.5 Sp1) and the Live Framework SDK assemblies. It can run;
    • against the Cloud LOE ( assuming that we have an internet connection )
    • against the Local LOE ( assuming the user has installed the client )
    • against a mixture of the two although I think that might be a bit “over the top”. Generally, I think it makes sense to write the code to talk to the Local LOE as that simplifies any loss-of-connectivity issues and lets the Mesh sort out the synchronisation issues.

then I have my MEWA applications which can run in one of two settings;

  • MEWA Run From the Live Desktop. That is, I point my browser to the “Live Desktop” and the application runs there. I’m calling this a MEWA Live instance or a MEWAL ( pronounced mule 🙂 )
  • MEWA Run From a shortcut on my Windows Desktop. That is, I double-click the shortcut and ( as far as I have worked out so far ) an application called MeshAppHost.exe runs up with some configuration parameter and makes the application available. I’m calling this a MEWA Desktop instance or a MEWAD ( pronounced meward 🙂 )

What I’m not yet sure about is whether;

  1. These applications are restricted to a subset of the Mesh. As far as I understand it, they are restricted by default in that an application gets its own MeshObject and then works with that MeshObject to create/access/modify DataFeeds. I believe that it is possible to have a MEWA “reach outside” of its own area of the Mesh and talk to existing resources but I haven’t tried it yet. The help topic is here and I’ll return to it in the future.
  2. A MEWA that is running MEWAL can make cross-domain requests?
  3. A MEWA that is running MEWAD can make requests to anything but the local LOE?

I’ll return to those and update the post if I find out the answers – it should be easy enough to try (2) and (3) and see how it works out. (1) needs some experimenting with that I’m keen to try.

Then I guess I could be writing a Silverlight or HTML based application that is not delivered as a MEWA but is just a client of the Live Framework built against the Silverlight libraries or the Javascript libraries respectively.

Note: At the time of writing ( from here ) you can’t build a web ( HTML or Silverlight ) application that isn’t a MEWA. I started down this track and then realised there was no authentication option and that turns out to be documented on the current preview.

I could also, finally, be writing some server-side code that uses the full .NET Framework along with the Live Framework SDK assemblies to call the Live Framework.

Lots of choice here, lots of things to figure out.