Implement PushAdapterConnector Interface

The implementation should support the following basic steps:

public class PushExampleAdapter implements PushAdapterConnector 
{
	
public UpdateResult pushTreeNodes(PushConnectorInput input) throws DataAccessException{ 

// 1. build an UpdateResult instance - the UpdateResult is used to return mappings between the sent ids to the actual ids that entered the data store.
// Also has an update status which allows to pass the status of data that was actually pushed, detailed status reports on failed IDs, and actions actually performed on successful ids.
// 2. handle the data:
// a. handle data to add. Can be retrieved by: input.getResultTreeNodes.getDataToAdd();
//  b. handle data to update.
//  c. handle data to delete.
// 3. Return the Update result.
	}
public void start(PushDataAdapterEnvironment env) throws DataAccessException{
	// this method is called when the integration point created, 
or when the adapter is reloaded 
	//(i.e after changing one of the mapping files
	// and pressing ‘save’). 
		
}
	
	
public void testConnection(PushDataAdapterEnvironment env) throws DataAccessException {
		// this method is called when pressing the 'test 
connection' button in the 
		//creation of the integration point.
		// For example if we push data to RDBMS this method 
can create a connection 
		//to the database and will run a dummy SQL statement.
		// If it fails it writes an error message to the log 
and throws an exception.
	}
	
	
	
Map<Object, Object> retrieveUniqueMapping(MappingQuery mappingQuery){
//This method will create the map according to the given mappingQuery. It will be called in the
// mapping stage of the adapter execution, before the ‘UpdateResult pushTreeNodes’ method.
// This method is called when the ‘keys-unique’ attribute of the ‘dynamic_mapping’ tag is true.
}
Map<Object, Set<Object>> retrieveNonUniqueMapping(MappingQuery mappingQuery){
 // This method is called when the ‘keys-unique’ attribute of the ‘dynamic_mapping’ tag is false.
//  In this case a key can be mapped to several values.
}
}