XMLRPCCommon.java :  » UnTagged » myandyrewards » org » xmlrpc » android » Android Open Source

Android Open Source » UnTagged » myandyrewards 
myandyrewards » org » xmlrpc » android » XMLRPCCommon.java
package org.xmlrpc.android;

import java.io.IOException;

import org.xmlpull.v1.XmlSerializer;

import android.util.Xml;

class XMLRPCCommon {

  protected XmlSerializer serializer;
  protected IXMLRPCSerializer iXMLRPCSerializer;
  
  XMLRPCCommon() {
    serializer = Xml.newSerializer();
    iXMLRPCSerializer = new XMLRPCSerializer();
  }

  /**
   * Sets custom IXMLRPCSerializer serializer (in case when server doesn't support
   * standard XMLRPC protocol)
   * 
   * @param serializer custom serializer
   */
  public void setSerializer(IXMLRPCSerializer serializer) {
    iXMLRPCSerializer = serializer;
  }
      
  protected void serializeParams(Object[] params) throws IllegalArgumentException, IllegalStateException, IOException {
    if (params != null && params.length != 0)
    {
      // set method params
      serializer.startTag(null, Tag.PARAMS);
      for (int i=0; i<params.length; i++) {
        serializer.startTag(null, Tag.PARAM).startTag(null, IXMLRPCSerializer.TAG_VALUE);
        iXMLRPCSerializer.serialize(serializer, params[i]);
        serializer.endTag(null, IXMLRPCSerializer.TAG_VALUE).endTag(null, Tag.PARAM);
      }
      serializer.endTag(null, Tag.PARAMS);
    }
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.