Coverage Report - yarfraw.mapping.backward.impl.ToChannelAtom03Impl
 
Classes in this File Line Coverage Branch Coverage Complexity
ToChannelAtom03Impl
89% 
100% 
0
 
 1  
 package yarfraw.mapping.backward.impl;
 2  
 import static yarfraw.mapping.backward.impl.Atom03MappingUtils.getElements;
 3  
 import static yarfraw.mapping.backward.impl.Atom03MappingUtils.toGenerator;
 4  
 import static yarfraw.mapping.backward.impl.Atom03MappingUtils.toItemEntry;
 5  
 import static yarfraw.mapping.backward.impl.Atom03MappingUtils.toLink;
 6  
 import static yarfraw.mapping.backward.impl.Atom03MappingUtils.toPerson;
 7  
 import yarfraw.core.datamodel.ChannelFeed;
 8  
 import yarfraw.generated.atom03.elements.EntryType;
 9  
 import yarfraw.generated.atom03.elements.FeedType;
 10  
 import yarfraw.generated.atom03.elements.LinkType;
 11  
 import yarfraw.generated.atom03.elements.PersonType;
 12  
 import yarfraw.mapping.backward.ToChannelAtom03;
 13  
 
 14  
 
 15  
 /**
 16  
  * TODO: document me
 17  
  * @author jliang
 18  
  *
 19  
  */
 20  3
 public class ToChannelAtom03Impl implements ToChannelAtom03{
 21  
 
 22  3
   private static final ToChannelAtom03 _instance = new ToChannelAtom03Impl();
 23  
     
 24  3
   private ToChannelAtom03Impl() {}
 25  
   public static ToChannelAtom03 getInstance(){
 26  3
     return _instance;
 27  
   }
 28  
 
 29  
   public ChannelFeed execute(FeedType feed){
 30  3
     if(feed == null){
 31  0
       return null;
 32  
     }
 33  3
     ChannelFeed c = new ChannelFeed();
 34  3
     if(feed.getAuthor() != null){
 35  3
       c.addManagingEditorOrAuthorOrPublisher(toPerson(feed.getAuthor()));
 36  
     }
 37  3
     if(feed.getContributor() != null){
 38  3
       for(PersonType p : feed.getContributor()){
 39  0
         c.addContributor(toPerson(p));
 40  
       }
 41  
     }
 42  
     
 43  3
     c.setRights(feed.getCopyright());
 44  
 
 45  3
     if(feed.getEntry() != null){
 46  3
       for(EntryType e : feed.getEntry()){
 47  78
         c.addItem(toItemEntry(e));
 48  
       }
 49  
     }
 50  
     
 51  
     
 52  3
     c.setGenerator(toGenerator(feed.getGenerator()));
 53  3
     if(feed.getId() != null){
 54  0
       c.setUid(feed.getId());
 55  
     }
 56  
     
 57  
 //  TODO:  feed.getInfo()
 58  3
     c.setLang(feed.getLang());
 59  
     
 60  3
     if(feed.getLink() != null){
 61  3
       for(LinkType l : feed.getLink()){
 62  3
         c.addLink(toLink(l));
 63  
       }
 64  
     }
 65  
     
 66  3
     c.setLastBuildOrUpdatedDate(feed.getModified());
 67  
 //    c.setTitle(feed.getTitle());
 68  
     
 69  3
     if(feed.getOtherAttributes() != null){
 70  3
       c.getOtherAttributes().putAll(feed.getOtherAttributes());
 71  
     }
 72  3
     c.getOtherElements().addAll(getElements(feed.getAny()));    
 73  3
     return c;
 74  
   }
 75  
   
 76  
 
 77  
 }