Breaking changes in the PDF Converter 3.5 Web Services interface
In preparation of the upcoming 3.5 release of the Muhimbi PDF Converter Services we are making sure that all required documentation is readily available on our website (See previous posts on watermarking and custom converters).
Unfortunately, today I am documenting something I had hoped I would never need to document, a breaking change in our Web Services interface that may require our existing customers to refresh their web service proxies. Fortunately the change is isolated to a little used configuration interface, the main Convert method will continue to work fine….. pfew.
Background
Our range of PDF Conversion products all share the same core engine, which runs as a Windows Service and can be accessed via an industry standard Web Services interface. However, this core engine originally started out as part of a SharePoint based product with a fixed number of hardcoded converters. The SharePoint user interface retrieves the list of converters via the GetConfiguration Web Service call and locally stores some settings against each converter. The same user interface uses the GetDiagnostics method on one or more converters to see if everything has been installed and configured correctly.
Configuration / Diagnostics related classes
The change
Both the GetConfiguration and GetDiagnostics methods return objects that used to contain a ConverterType property, which holds an element of the following enumeration:
> private enum ConverterType > > { > > WordProcessing, > > SpreadSheets, > > Presentations, > > InfoPath, > > Vector, > > OneNote, > > MicrosoftPublisher, > > HTML > > }
As it is now possible to add custom converters to the conversion engine, we can no longer rely on a fixed list of converters. As a result we have dropped the ConverterType property in favour of the new ConverterName property, which holds a string that identifies the converter. This identifier is identical to the key field used by the config file to describe the converter.
In addition to this change we have also dropped the ConversionFidelity property from the DiagnosticRequestItem. This value is now read from the config file for the specified ConverterName.
We are fairly confident that very few people are using these specific interfaces. However, if you are and you need further information or assistance then please let us know.
Clavin is a Microsoft Business Applications MVP who supports 1,000+ high-level enterprise customers with challenges related to PDF conversion in combination with SharePoint on-premises Office 365, Azure, Nintex, K2, and Power Platform mostly no-code solutions.