Hi,

I have been investigating this API (primarily the transformation class) to see 
whether it could be used rather than the lower level functions.

I have a few questions.


1.       Is this API ready for production use? I.e. is it still being updated 
regularly and will the interface change?

2.       The TransformationPlugin class seems to be designed to handle small 
uploads and downloads. I assume this because although the consume method 
provides a buffer which you can store how you wish, the produce method has to 
be provided with all the data in one go in the handleInputComplete method.

I modified to the class source to expose the writeReady functionality and this 
solved the problem. Now I can call produce when the writeReady method is 
called. I also had to modify the code so the post data was not stored 
internally and to always set the total length of the output buffer when calling 
TSVConnWrite.

Am I correct about this class being designed for small buffers? Do the changes 
I have describe make sense and would it be worth updating the class with them? 
I cannot easily add this functionality to my derived TransformationPlugin as 
the handleTransformationPluginEvents function in the TransformationPlugin code 
is not overridable (as it is not in the class) and this is where events are 
handled.

3.       I am using this class to send data to an engine to scan it - this can 
take some time. There did not seem to be a way of, after buffering all the data 
(in handleInputComplete), to start producing data at a later stage.

I modified the source to allow the scheduling of an immediate event and then 
exposed the immediate event handler. So then after the engine has scanned the 
data (in a different thread) an immediate event is scheduled and then in the 
event handler data is produced.

Do these changes make sense? Again I cannot easily add this functionality to my 
derived TransformationPlugin as the handleTransformationPluginEvents function 
in the TransformationPlugin code is not overridable (as it is not in the class) 
and this is where events are handled.

So to summarise I am asking whether it is sensible to use the 
TransformationPlugin, modify it and get the changes back into the main source 
line or maybe to use the ideas from it and write my own one.

Thank-you.



Christopher Reynolds

Team Leader

[Telephone] +44 118 903 8611

[Twitter]@clearswift

[Clearswift] <http://www.clearswift.com/>

1310 Waterside | Arlington Business Park | Theale | Berkshire | RG7 4SA | 
United Kingdom

RELEASED: Clearswift v4.5 Gateways. Upgrade to the latest Clearswift technology 
today. Learn more 
here.<https://www.clearswift.com/training-and-support/migration-and-upgrades>

This e-mail and any files transmitted with it are strictly confidential, may be 
privileged and are intended only for use by the addressee unless otherwise 
indicated.  If you are not the intended recipient any use, dissemination, 
printing or copying is strictly prohibited and may be unlawful.  If you have 
received this e-mail in error, please delete it immediately and contact the 
sender as soon as possible.  Clearswift cannot be held liable for delays in 
receipt of an email or any errors in its content. Clearswift accepts no 
responsibility once an e-mail and any attachments leave us. Unless expressly 
stated, opinions in this message are those of the individual sender and not of 
Clearswift.

This email message has been inspected by Clearswift for inappropriate content 
and security threats. 

To find out more about Clearswift’s solutions please visit www.clearswift.com

Reply via email to