public Object[] fromXML(Element xml) throws SoapFault { // // use the Muse serializer framework to convert <Notify/> into // an array of NotificationMessage objects // SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(NotificationMessage[].class); Object messageArray = ser.fromXML(xml); return new Object[]{ messageArray }; }
public Class getSerializableType() { return getArrayClass(); }
private SerializerRegistry() { // // create and save all of the serializers for the built-in types // registerSerializer(Boolean.class, new BooleanSerializer()); registerSerializer(boolean.class, new BooleanSerializer()); registerSerializer(Double.class, new DoubleSerializer()); registerSerializer(double.class, new DoubleSerializer()); registerSerializer(Float.class, new FloatSerializer()); registerSerializer(float.class, new FloatSerializer()); registerSerializer(Integer.class, new IntegerSerializer()); registerSerializer(int.class, new IntegerSerializer()); registerSerializer(Long.class, new LongSerializer()); registerSerializer(long.class, new LongSerializer()); registerSerializer(Short.class, new ShortSerializer()); registerSerializer(short.class, new ShortSerializer()); registerSerializer(String.class, new StringSerializer()); registerSerializer(URI.class, new UriSerializer()); registerSerializer(URL.class, new UrlSerializer()); registerSerializer(Date.class, new DateSerializer()); registerSerializer(QName.class, new QNameSerializer()); registerSerializer(Element.class, new ElementSerializer()); registerSerializer(XmlSerializable.class, new XmlSerializableSerializer()); }
throws SoapFault SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(type); return ser.toXML(property, qname);
public void initialize() throws SoapFault { super.initialize(); // // add NotificationMessage to the collection of serializable types in // case the user forgot to put it in muse.xml // SerializerRegistry registry = SerializerRegistry.getInstance(); registry.registerSerializer(NotificationMessage.class, new NotificationMessageSerializer()); // // add message handler for <Notify/>, which has array parameters // that are outside our WSDL conventions // setMessageHandler(createNotifyHandler()); }
Class type = ReflectUtils.getClassFromArrayClass(getArrayClass()); Object array = Array.newInstance(type, children.length); Serializer serializer = getClassSerializer(); Object result = serializer.fromXML(children[n]); Array.set(array, n, result);
throws SoapFault Serializer serializer = getClassSerializer(); Element root = XmlUtils.createElement(qname); Element child = serializer.toXML(item, qname); root.appendChild(child);
private Object deserializeValue(Serializer ser, Element value) throws BaseFault { try { return ser.fromXML(value); } catch (SoapFault error) { throw WsbfUtils.convertToFault(error); } }
private Element serializeValue(Serializer ser, Object value, QName name) throws BaseFault { try { return ser.toXML(value, name); } catch (SoapFault error) { throw WsbfUtils.convertToFault(error); } }
/** * * Associates the given serializer with the type and any of its sub-types. * An ArraySerializer is also created for arrays of the type. * * @param type * @param ser * */ public void registerSerializer(Class type, Serializer ser) { if (type == null) throw new NullPointerException(_MESSAGES.get("NullClass")); if (ser == null) throw new NullPointerException(_MESSAGES.get("NullSerializer")); // // make an array version of the serializer // Class arrayType = ReflectUtils.getArrayClassFromClass(type); Serializer array = new ArraySerializer(arrayType, ser); _serializers.put(type, ser); _serializers.put(arrayType, array); }
ser = searchClassHierarchy(parent); ser = searchClassHierarchy(interfaces[n]);
/** * * Deserializes the given DOM Element using the Serializer registered * for the given type. * * @param xml * @param theClass * * @return An instance of the given type, created from the given XML. If * the type is null (or void), the method returns null. * * @throws SoapFault * <ul> * <li>If the XML cannot be deserialized to the given type.</li> * </ul> * */ protected Object deserialize(Element xml, Class theClass) throws SoapFault { if (theClass == null || theClass == Void.TYPE) return null; SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer deser = registry.getSerializer(theClass); return deser.fromXML(xml); }
throws SoapFault SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(type); Element[] xml = new Element[properties.length]; xml[n] = ser.toXML(properties[n], qname);
/** * * Uses one of Muse's registered Serializers to convert the given Element * into an instance of the given type. * * @param property * The property value to deserialize. * * @param type * The type whose registered Serializer will be used to parse * the property value. * * @return The POJO representation of the given property value. * * @throws SoapFault * <ul> * <li>If the value could not be deserialized.</li> * </ul> * */ public static Object convertToObject(Element property, Class type) throws SoapFault { SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer deser = registry.getSerializer(type); return deser.fromXML(property); }
public void publish(QName topicName, QName[] contentNames, Object[] content) throws SoapFault { SerializerRegistry registry = SerializerRegistry.getInstance(); Element[] contentXML = new Element[content.length]; // // get the right serializer and transform POJO to XML // for (int n = 0; n < content.length; ++n) { Class contentType = content[n].getClass(); Serializer ser = registry.getSerializer(contentType); contentXML[n] = ser.toXML(content[n], contentNames[n]); } publish(topicName, contentXML); }
public Object getMessageContent(QName qname, Class type) throws SoapFault { Element content = getMessageContent(qname); SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(type); return ser.fromXML(content); }
public void addMessageContent(QName qname, Object content) throws SoapFault { if (qname == null) throw new NullPointerException(_MESSAGES.get("NullContentName")); if (content == null) throw new NullPointerException(_MESSAGES.get("NullMessageContent")); SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(content.getClass()); Element xml = ser.toXML(content, qname); _messageContent.put(qname, xml); }
throws SoapFault SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer deser = registry.getSerializer(type); Array.set(objects, n, deser.fromXML(properties[n]));
SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(theClass); return ser.toXML(obj, qname);
SerializerRegistry registry = SerializerRegistry.getInstance(); Serializer ser = registry.getSerializer(parameters[i]); objects[i] = ser.fromXML(elements[i]);