Cook Computing

I've been very busy on

December 21, 2001 Written by Charles Cook

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.