• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java ElementArray类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: getInstance

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
/**
 * This is used to create an annotation for the provided type.
 * Annotations created are used to match the type provided. So
 * an array of objects will have an <code>ElementArray</code>
 * annotation for example. Matching the annotation to the
 * type ensures the best serialization for that type. 
 * 
 * @param type the type to create the annotation for
 * 
 * @return this returns the synthetic annotation to be used
 */
private Annotation getInstance(Class type) throws Exception {
   ClassLoader loader = getClassLoader();
   Class entry = type.getComponentType();
   
   if(type.isArray()) {
      if(isPrimitive(entry)) {
         return getInstance(loader, Element.class);
      }
      return getInstance(loader, ElementArray.class);
   }
   if(isPrimitive(type) && isAttribute()) {
      return getInstance(loader, Attribute.class);
   }
   return getInstance(loader, Element.class);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:27,代码来源:AnnotationFactory.java


示例2: MethodArrayBean

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@SuppressFBWarnings("EI_EXPOSE_REP2")
public MethodArrayBean(
        @ElementArray(name = "types", entry = "type", empty = false) Type[] types,
        @ElementArray(name = "classes", entry = "class", empty = false) Class<?>[] classes) {
    this.types = types;
    this.classes = classes;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:8,代码来源:TypeConverterTest.java


示例3: getArgumentsWrapped

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@Nonnull
@ElementArray(name = "args", entry = "arg", required = false, empty = false)
public Object[] getArgumentsWrapped() {
    Object[] args = super.getArguments();
    args = Arrays.copyOf(args, args.length);
    for (int i = 0; i < args.length; i++)
        args[i] = PersisterUtils.wrap(args[i]);
    return args;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:10,代码来源:SimpleXmlInvocation.java


示例4: ElementArrayParameter

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
/**   
 * Constructor for the <code>ElementArrayParameter</code> object.
 * This is used to create a parameter that can be used to 
 * determine a consistent name using the provided XML annotation.
 * 
 * @param factory this is the constructor the parameter is in
 * @param value this is the annotation used for the parameter
 * @param format this is the format used to style the elements
 * @param index this is the index the parameter appears at
 */
public ElementArrayParameter(Constructor factory, ElementArray value, Format format, int index) throws Exception {
   this.contact = new Contact(value, factory, index);
   this.label = new ElementArrayLabel(contact, value, format);
   this.expression = label.getExpression();
   this.path = label.getPath();
   this.type = label.getType();
   this.name = label.getName();
   this.key = label.getKey();
   this.index = index;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:21,代码来源:ElementArrayParameter.java


示例5: scan

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例6: scan

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例7: getBuilder

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例8: process

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例9: getBuilder

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例10: ElementArrayLabel

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
/**
 * Constructor for the <code>ElementArrayLabel</code> object. This
 * creates a label object, which can be used to convert an element
 * node to an array of XML serializable objects.
 * 
 * @param contact this is the contact that this label represents
 * @param label the annotation that contains the schema details
 * @param format this is used to style the elements for this label
 */
public ElementArrayLabel(Contact contact, ElementArray label, Format format) {
   this.detail = new Introspector(contact, this, format);
   this.decorator = new Qualifier(contact);
   this.required = label.required();
   this.type = contact.getType();
   this.entry = label.entry();
   this.data = label.data();
   this.name = label.name();
   this.format = format;
   this.label = label;
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:21,代码来源:ElementArrayLabel.java


示例11: process

import org.simpleframework.xml.ElementArray; //导入依赖的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


示例12: testHandler

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@ElementArray
@ElementList
@ElementMap
@Element
public void testHandler() throws Exception {
   AnnotationHandler elementHandler = new AnnotationHandler(Element.class);
   Element element = getClass().getDeclaredMethod("testHandler").getAnnotation(Element.class);
   
   System.err.println(elementHandler);
   System.err.println(element);
   
   AnnotationHandler elementListHandler = new AnnotationHandler(ElementList.class);
   ElementList elementList = getClass().getDeclaredMethod("testHandler").getAnnotation(ElementList.class);
   
   System.err.println(elementListHandler);
   System.err.println(elementList);
   
   AnnotationHandler elementMapHandler = new AnnotationHandler(ElementMap.class);
   ElementMap elementMap = getClass().getDeclaredMethod("testHandler").getAnnotation(ElementMap.class);
   
   System.err.println(elementMapHandler);
   System.err.println(elementMap);
   
   AnnotationHandler elementArrayHandler = new AnnotationHandler(ElementArray.class);
   ElementArray elementArray = getClass().getDeclaredMethod("testHandler").getAnnotation(ElementArray.class);
   
   System.err.println(elementArrayHandler);
   System.err.println(elementArray);
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:30,代码来源:AnnotationHandlerTest.java


示例13: testMethodPart

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
public void testMethodPart() throws Exception {
   assertTrue(Element.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("getInteger"), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(Element.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("setInteger", int.class), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementMap.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("getMap"), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementMap.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("setMap", Map.class), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementList.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("getList"), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementList.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("setList", List.class), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementArray.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("getArray"), new Annotation[0]).getAnnotation().getClass()));
   assertTrue(ElementArray.class.isAssignableFrom(new MethodPartFactory(new DetailScanner(MethodPartFactoryTest.class), new Support()).getInstance(Bean.class.getMethod("setArray", String[].class), new Annotation[0]).getAnnotation().getClass()));
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:11,代码来源:MethodPartFactoryTest.java


示例14: testMixedAnnotations

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
public void testMixedAnnotations() throws Exception {
   Map<String, Contact> map = getContacts(MixedAnnotations.class);
   
   assertFalse(map.get("array").isReadOnly());
   assertFalse(map.get("map").isReadOnly());
   assertFalse(map.get("name").isReadOnly());      
   assertFalse(map.get("value").isReadOnly());
   
   assertEquals(String[].class, map.get("array").getType());
   assertEquals(Map.class, map.get("map").getType());
   assertEquals(int.class, map.get("value").getType());      
   assertEquals(String.class, map.get("name").getType());
   
   assertEquals(Attribute.class, map.get("name").getAnnotation().annotationType());
   assertEquals(Element.class, map.get("value").getAnnotation().annotationType());
   assertEquals(ElementMap.class, map.get("map").getAnnotation().annotationType());
   assertEquals(ElementArray.class, map.get("array").getAnnotation().annotationType());
   
   assertEquals(Attribute.class, map.get("name").getAnnotation(Attribute.class).annotationType());
   assertEquals(Element.class, map.get("value").getAnnotation(Element.class).annotationType());
   assertEquals(ElementMap.class, map.get("map").getAnnotation(ElementMap.class).annotationType());
   assertEquals(ElementArray.class, map.get("array").getAnnotation(ElementArray.class).annotationType());
   
   assertNull(map.get("name").getAnnotation(Root.class));
   assertNull(map.get("value").getAnnotation(Root.class));
   assertNull(map.get("map").getAnnotation(Root.class));
   assertNull(map.get("array").getAnnotation(Root.class));
}
 
开发者ID:ngallagher,项目名称:simplexml,代码行数:29,代码来源:MethodScannerDefaultTest.java


示例15: getNotes

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
/**
 * Assembled notes. Includes notes from inherited images.
 */
@Transient
@ElementArray(required = false, entry = "note")
public String[] getNotes() {
	List<String> notes = new ArrayList<String>();
	ImageModule image = getImage();
	if (image != null) {
		notes.addAll(Arrays.asList(image.getNotes()));
	}
	return notes.toArray(new String[0]);
}
 
开发者ID:slipstream,项目名称:SlipStreamServer,代码行数:14,代码来源:Node.java


示例16: getCloudServiceNamesList

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
/**
 * List of cloud service names used in the current run
 */
@ElementArray(required = false)
public String[] getCloudServiceNamesList() {
    if (cloudServiceNames == null) {
        return new String[]{};
    }
    Set<String> uniqueCloudServiceNames = new HashSet<String>(Arrays.asList(cloudServiceNames.split(",")));
    return uniqueCloudServiceNames.toArray(new String[uniqueCloudServiceNames.size()]);
}
 
开发者ID:slipstream,项目名称:SlipStreamServer,代码行数:12,代码来源:Run.java


示例17: getTypes

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@ElementArray(name = "types", entry = "type", empty = false)
@SuppressFBWarnings("EI_EXPOSE_REP")
public Type[] getTypes() {
    return types;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:6,代码来源:TypeConverterTest.java


示例18: getClasses

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@ElementArray(name = "classes", entry = "class", empty = false)
@SuppressFBWarnings("EI_EXPOSE_REP")
public Class<?>[] getClasses() {
    return classes;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:6,代码来源:TypeConverterTest.java


示例19: ArrayBody

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@SuppressFBWarnings("EI_EXPOSE_REP2")
public ArrayBody(@ElementArray(name = "body") String[] body) {
    this.body = body;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:5,代码来源:PersisterFactoryTest.java


示例20: getBody

import org.simpleframework.xml.ElementArray; //导入依赖的package包/类
@ElementArray(name = "body", required = false)
@SuppressFBWarnings("EI_EXPOSE_REP")
public String[] getBody() {
    return body;
}
 
开发者ID:shevek,项目名称:simple-xml-serializers,代码行数:6,代码来源:PersisterFactoryTest.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java GenerateOutput类代码示例发布时间:2022-05-22
下一篇:
Java IDocumentUndoManager类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap