Adapters...
The design in our project contains 3 adapters. the data transformation adapter, the data processing adapter and the data integration adapter. they have different functionalities.
The work of an adapter is to be an interface between two disparate components. In our case the data integration adapter gets data from third party websites and pushes data into them. So it can be an adapter. The data processing adapter gets processed data from the database or processes it and pushes it into the database so it can be called an adapter. But the data transformation adapter is not an adapter at all it only transforms one type of data into other. so it should rather be called a data transformation engine.
If the adapter pattern is implemented here, say there is an interface called IAdapter. This interface has 2 methods GetData() and SetData(). These methods will be implemented by the data processing adapter and the data integration adapter. The data transformation engine should have 2 overloads of one method say Transform() with different parameters. The method should transform data from raw data to objects or otherwise depending upon the parameters passed.
I think our design needs some refactoring.