Cook Computing

 

« December 2001 »

I've updated the XML-RPC.NET website

Monday 24 December

I've updated the XML-RPC.NET website with version 0.3.0. This is a very preliminary release and I've still got plenty of coding and testing to do before it is complete.

I'm using a .NET version of Kent Beck's famous XUnit testing framework to set up unit tests for the XML-RPC.NET code. Being able to set up tests in this way is a great help when making changes or adding new features. It makes regression testing very easy. The implementation I'm using at the moment is .NetUnit but NUnit also exists. I happened to come across .NetUnit first but I'll be evaluatiing NUnit when I get the chance.

I'll probably not get much time over the next 2 or 3 days for obvious reasons but I hope to reach at least the same level of functionality in the .NET beta 1 versions of XMl-RPC.NET by the end of this weekend coming.

Posted by at 07:10 PM. Permalink.

I've been very busy on

Friday 21 December

I've been very busy on other work the last three months. However I've now got a break for 2 weeks over Xmas and I'm updating XML-RPC.Net to be beta 2 compatible. I'm also taking the opportunity to restructure the library by factoring out functionality into more classes to allow more flexible usage of the library.

I've started work on the client side and there are two major changes in this area:

(1) The XmlRpcClientProcotol class is now a true .NET component (i.e. as per the .NET SDK docs: "While the term component has many meanings, in the .NET Framework a component is a class that implements the System.ComponentModel.IComponent interface or one that derives directly or indirectly from a class that implements this interface."). One of the benefits of this is that the component can be placed in the Visual Studio toolbox for drag&drop when in desgin mode, for example onto a Windows form. Then the attributes of the component, for example the URL of the XML-RPC endpoint, can then be configured in the Properties dialog of Visual Studio.

(2) It is no longer necessary to derive a class from XmlRpcClientProtocol to define XML-RPC proxy methods. For example, a form can contain an instance of XmlRpcClientProtocol and define methods which make calls via this instance. For example:

[XmlRpcMethod("examples.getStateName")]
public string GetStateName(int stateNumber)
{
  return (string)xmlRpcClientProtocolInstance.Invoke(this, "GetStateName", stateNumber);
}

I'm planning to update the site with at least the client classes sometime this weekend.

Posted by at 10:57 AM. Permalink.