public override void Execute(List <DataCompareItem> addItems, List <DataCompareItem> updateItems, List <DataCompareItem> deleteItems, IDataSourceReader reader, IDataSynchronizationStatus status)
        {
            DataSourceReader = reader as PipedriveDatasourceReader;

            if (DataSourceReader != null)
            {
                Mapping = new DataSchemaMapping(SchemaMap, DataCompare);

                WebRequestHelper = DataSourceReader.GetWebRequestHelper();
                DatasourceInfo   = DataSourceReader.GetDatasourceInfo();
                DataSchema       = DatasourceInfo.GetPipedriveDataSchema(WebRequestHelper);

                //Process the Changed Items
                if (addItems != null && status.ContinueProcessing)
                {
                    AddItems(addItems, status);
                }
                if (updateItems != null && status.ContinueProcessing)
                {
                    UpdateItems(updateItems, status);
                }
                if (deleteItems != null && status.ContinueProcessing)
                {
                    DeleteItems(deleteItems, status);
                }
            }
        }