Custom inbound pipe: Implement IPushPipe
 To implement the IPushPipe interface, add the following method in XmlInboundPipe.cs:
  
 public virtual void PushData(IList<PublishingSystemEventInfo> items)
 {
     var wrapperObjects = items.Select(i =>
     {
         var item = i.Item;
         return (item is WrapperObject) ? (WrapperObject)item : new WrapperObject(item) { MappingSettings = this.PipeSettings.Mappings, Language = i.Language };
     }).ToList();
  
     this.publishingPoint.RemoveItems(wrapperObjects);
     this.publishingPoint.AddItems(wrapperObjects);
 }
    You must implement the PushData method. First, you wrap all objects. Then, you push the data to the publishing point.