当前位置: 首页>>代码示例>>Java>>正文


Java ElementListUnion类代码示例

本文整理汇总了Java中org.simpleframework.xml.ElementListUnion的典型用法代码示例。如果您正苦于以下问题:Java ElementListUnion类的具体用法?Java ElementListUnion怎么用?Java ElementListUnion使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ElementListUnion类属于org.simpleframework.xml包,在下文中一共展示了ElementListUnion类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: scan

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * This reflectively checks the annotation to determine the type 
 * of annotation it represents. If it represents an XML schema
 * annotation it is used to create a <code>Contact</code> which 
 * can be used to represent the field within the source object.
 * 
 * @param field the field that the annotation comes from
 * @param label the annotation used to model the XML schema
 * @param list this is the list of annotations on the field
 */
private void scan(Field field, Annotation label, Annotation[] list) {
   if(label instanceof Attribute) {
      process(field, label, list);
   }
   if(label instanceof ElementUnion) {
      process(field, label, list);
   }
   if(label instanceof ElementListUnion) {
      process(field, label, list);
   }
   if(label instanceof ElementMapUnion) {
      process(field, label, list);
   }
   if(label instanceof ElementList) {
      process(field, label, list);
   }     
   if(label instanceof ElementArray) {
      process(field, label, list);
   }
   if(label instanceof ElementMap) {
      process(field, label, list);
   }
   if(label instanceof Element) {
      process(field, label, list);
   }       
   if(label instanceof Version) {
      process(field, label, list);
   }
   if(label instanceof Text) {
      process(field, label, list);
   }
   if(label instanceof Transient) {
      remove(field, label);
   }
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:46,代码来源:FieldScanner.java

示例2: scan

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * This reflectively checks the annotation to determine the type 
 * of annotation it represents. If it represents an XML schema
 * annotation it is used to create a <code>Contact</code> which 
 * can be used to represent the method within the source object.
 * 
 * @param method the method that the annotation comes from
 * @param label the annotation used to model the XML schema
 * @param list this is the list of annotations on the method
 */ 
private void scan(Method method, Annotation label, Annotation[] list) throws Exception {
   if(label instanceof Attribute) {
      process(method, label, list);
   }
   if(label instanceof ElementUnion) {
      process(method, label, list);
   }
   if(label instanceof ElementListUnion) {
      process(method, label, list);
   }
   if(label instanceof ElementMapUnion) {
      process(method, label, list);
   }
   if(label instanceof ElementList) {
      process(method, label, list);
   }
   if(label instanceof ElementArray) {
      process(method, label, list);
   }
   if(label instanceof ElementMap) {
      process(method, label, list);
   }
   if(label instanceof Element) {
      process(method, label, list);
   }    
   if(label instanceof Version) {
      process(method, label, list);
   }
   if(label instanceof Text) {
      process(method, label, list);
   }
   if(label instanceof Transient) {
      remove(method, label, list);
   }
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:46,代码来源:MethodScanner.java

示例3: getBuilder

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * Creates an entry that is used to select the constructor for the
 * parameter. Each parameter must implement a constructor that takes 
 * a constructor, and annotation, and the index of the parameter. If
 * the annotation is not know this method throws an exception.
 * 
 * @param label the XML annotation used to create the parameter
 * 
 * @return this returns the entry used to create a constructor
 */
private ParameterBuilder getBuilder(Annotation label) throws Exception{      
   if(label instanceof Element) {
      return new ParameterBuilder(ElementParameter.class, Element.class);
   }
   if(label instanceof ElementList) {
      return new ParameterBuilder(ElementListParameter.class, ElementList.class);
   }
   if(label instanceof ElementArray) {
      return new ParameterBuilder(ElementArrayParameter.class, ElementArray.class);               
   }
   if(label instanceof ElementMapUnion) {
      return new ParameterBuilder(ElementMapUnionParameter.class, ElementMapUnion.class, ElementMap.class);
   }
   if(label instanceof ElementListUnion) {
      return new ParameterBuilder(ElementListUnionParameter.class, ElementListUnion.class, ElementList.class);
   }
   if(label instanceof ElementUnion) {
      return new ParameterBuilder(ElementUnionParameter.class, ElementUnion.class, Element.class);
   }
   if(label instanceof ElementMap) {
      return new ParameterBuilder(ElementMapParameter.class, ElementMap.class);
   }
   if(label instanceof Attribute) {
      return new ParameterBuilder(AttributeParameter.class, Attribute.class);
   }
   if(label instanceof Text) {
      return new ParameterBuilder(TextParameter.class, Text.class);
   }
   throw new PersistenceException("Annotation %s not supported", label);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:41,代码来源:ParameterFactory.java

示例4: process

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * This is used to create <code>Parameter</code> objects which are
 * used to represent the parameters in a constructor. Each parameter
 * contains an annotation an the index it appears in.
 * 
 * @param label this is the annotation used for the parameter
 * @param ordinal this is the position the parameter appears at
 * 
 * @return this returns the parameters for the constructor
 */
private List<Parameter> process(Annotation label, int ordinal) throws Exception{
   if(label instanceof Attribute) {
      return create(label, ordinal);
   }
   if(label instanceof Element) {
      return create(label, ordinal);
   }
   if(label instanceof ElementList) {
      return create(label, ordinal);
   }     
   if(label instanceof ElementArray) {
      return create(label, ordinal);
   }
   if(label instanceof ElementMap) {
      return create(label, ordinal);
   }
   if(label instanceof ElementListUnion) {
      return union(label, ordinal);
   }     
   if(label instanceof ElementMapUnion) {
      return union(label, ordinal);
   }
   if(label instanceof ElementUnion) {
      return union(label, ordinal);
   }
   if(label instanceof Text) {
      return create(label, ordinal);
   }
   return emptyList();
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:41,代码来源:SignatureScanner.java

示例5: getLabels

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * Creates a <code>LabelGroup</code> using the provided contact and
 * annotation. The labels produced contain all information related
 * to an object member. It knows the name of the XML entity, as
 * well as whether it is required. Once created the converter can
 * transform an XML node into Java object and vice versa.
 * 
 * @param contact this is contact that the label is produced for
 * @param label represents the XML annotation for the contact
 * 
 * @return returns the list of labels associated with the contact
 */
private LabelGroup getLabels(Contact contact, Annotation label) throws Exception {
   if(label instanceof ElementUnion) {
      return getUnion(contact, label);
   }
   if(label instanceof ElementListUnion) {
      return getUnion(contact, label);
   }
   if(label instanceof ElementMapUnion) {
      return getUnion(contact, label);
   }
   return getSingle(contact, label);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:25,代码来源:LabelExtractor.java

示例6: getBuilder

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * Creates an entry that is used to select the constructor for the
 * label. Each label must implement a constructor that takes a
 * contact and the specific XML annotation for that field. If the
 * annotation is not know this method throws an exception.
 * 
 * @param label the XML annotation used to create the label
 * 
 * @return this returns the entry used to create a constructor
 */
private LabelBuilder getBuilder(Annotation label) throws Exception{   
   if(label instanceof Element) {
      return new LabelBuilder(ElementLabel.class, Element.class);
   }
   if(label instanceof ElementList) {
      return new LabelBuilder(ElementListLabel.class, ElementList.class);
   }
   if(label instanceof ElementArray) {
      return new LabelBuilder(ElementArrayLabel.class, ElementArray.class);               
   }
   if(label instanceof ElementMap) {
      return new LabelBuilder(ElementMapLabel.class, ElementMap.class);
   }
   if(label instanceof ElementUnion) {
      return new LabelBuilder(ElementUnionLabel.class, ElementUnion.class, Element.class);
   }
   if(label instanceof ElementListUnion) {
      return new LabelBuilder(ElementListUnionLabel.class, ElementListUnion.class, ElementList.class);
   }
   if(label instanceof ElementMapUnion) {
      return new LabelBuilder(ElementMapUnionLabel.class, ElementMapUnion.class, ElementMap.class);
   }
   if(label instanceof Attribute) {
      return new LabelBuilder(AttributeLabel.class, Attribute.class);
   }
   if(label instanceof Version) {
      return new LabelBuilder(VersionLabel.class, Version.class);
   }
   if(label instanceof Text) {
      return new LabelBuilder(TextLabel.class, Text.class);
   }
   throw new PersistenceException("Annotation %s not supported", label);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:44,代码来源:LabelExtractor.java

示例7: getBuilder

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * This returns a builder used to instantiate an extractor based
 * on a particular union annotation. If the annotation provided
 * does not represent a valid union an exception is thrown.
 * 
 * @param label this is the union annotation to build for
 * 
 * @return this returns a builder used to create an extractor
 */
private ExtractorBuilder getBuilder(Annotation label) throws Exception {
   if(label instanceof ElementUnion) {
      return new ExtractorBuilder(ElementUnion.class, ElementExtractor.class);
   }
   if(label instanceof ElementListUnion) {
      return new ExtractorBuilder(ElementListUnion.class, ElementListExtractor.class);
   }
   if(label instanceof ElementMapUnion) {
      return new ExtractorBuilder(ElementMapUnion.class, ElementMapExtractor.class);
   }
   throw new PersistenceException("Annotation %s is not a union", label);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:22,代码来源:ExtractorFactory.java

示例8: process

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
/**
 * This reflectively checks the annotation to determine the type 
 * of annotation it represents. If it represents an XML schema
 * annotation it is used to create a <code>Label</code> which can
 * be used to represent the field within the context object.
 * 
 * @param field the field that the annotation comes from
 * @param label the annotation used to model the XML schema
 * 
 * @throws Exception if there is more than one text annotation
 */   
public void process(Contact field, Annotation label) throws Exception {
   if(label instanceof Attribute) {
      process(field, label, attributes);
   }
   if(label instanceof ElementUnion) {
      union(field, label, elements);
   }
   if(label instanceof ElementListUnion) {
      union(field, label, elements);
   }
   if(label instanceof ElementMapUnion) {
      union(field, label, elements);
   }
   if(label instanceof ElementList) {
      process(field, label, elements);
   }
   if(label instanceof ElementArray) {
      process(field, label, elements);
   }
   if(label instanceof ElementMap) {
      process(field, label, elements);
   }
   if(label instanceof Element) {
      process(field, label, elements);
   }    
   if(label instanceof Version) {
      version(field, label);
   }
   if(label instanceof Text) {
      text(field, label);
   }
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:44,代码来源:StructureBuilder.java

示例9: testUnionList

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
public void testUnionList() throws Exception {
   FieldScanner scanner = new FieldScanner(new DetailScanner(ExampleList.class), new Support());
   Support support = new Support();
   Contact contact = scanner.get(0);
   ElementList element = ((ElementListUnion)contact.getAnnotation()).value()[0];
   Label unionLabel = support.getLabel(contact, contact.getAnnotation());
   Label elementLabel = support.getLabel(contact, element);
   
   assertEquals(unionLabel.getName(), "a");
   assertEquals(elementLabel.getName(), "a");
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:12,代码来源:LabelFactoryTest.java

示例10: Test3

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
public Test3(  @Path(value="elements")
            @ElementListUnion({
               @ElementList(entry="element-a", type=MyElementA.class, inline=true),
               @ElementList(entry="element-b", type=MyElementB.class, inline=true)
            })
            final java.util.ArrayList<MyElement> elements
      ) {
   super();
   this.elements = elements;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:11,代码来源:Test3Test.java

示例11: getElements

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
@Path(value="elements")
@ElementListUnion({
   @ElementList(entry="elementA", type=MyElementA.class, inline=true),
   @ElementList(entry="elementB", type=MyElementB.class, inline=true),
   @ElementList(entry="element", type=MyElement.class, inline=true)
})
java.util.ArrayList<MyElement> getElements(){
   return this.elements;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:10,代码来源:Test4Test.java

示例12: setElements

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
@Path(value="elements")
@ElementListUnion({
   @ElementList(entry="elementA", type=MyElementA.class, inline=true),
   @ElementList(entry="elementB", type=MyElementB.class, inline=true),
   @ElementList(entry="element", type=MyElement.class, inline=true)
})
void setElements(final java.util.ArrayList<MyElement> elements){
   this.elements = elements;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:10,代码来源:Test4Test.java

示例13: getGroup

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
private static Group getGroup() throws Exception {
   Field field = CompositeListUnionTest.class.getDeclaredField("EXAMPLE");
   Annotation annotation = field.getAnnotation(ElementListUnion.class);
   Annotation path = field.getAnnotation(Path.class);
   return new GroupExtractor(
         new FieldContact(field, annotation, new Annotation[]{annotation, path}),
         annotation,
         new Format());
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:10,代码来源:CompositeListUnionTest.java

示例14: getElements

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
@Path(value="elements")
@ElementListUnion({
   @ElementList(entry="element-a", type=MyElementA.class, inline=true),
   @ElementList(entry="element-b", type=MyElementB.class, inline=true)
})
public java.util.ArrayList<MyElement> getElements(){
   return new java.util.ArrayList<MyElement>(this.elements);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:9,代码来源:Test3_2Test.java

示例15: Test3_2

import org.simpleframework.xml.ElementListUnion; //导入依赖的package包/类
public Test3_2(   @Path(value="elements")
            @ElementListUnion({
               @ElementList(entry="element-a", type=MyElementA.class, inline=true),
               @ElementList(entry="element-b", type=MyElementB.class, inline=true)
            })
            final java.util.ArrayList<MyElement> elements
      ) {
   super();
   this.elements = elements;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:11,代码来源:Test3_2Test.java


注:本文中的org.simpleframework.xml.ElementListUnion类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。