Package org.codehaus.xfire.service

Examples of org.codehaus.xfire.service.MessagePartInfo


            writeStartElement(writer, name, msgInfo.getName().getNamespaceURI());
           
            for(Iterator itr = msgInfo.getMessageParts().iterator(); itr.hasNext();)
            {
                MessagePartInfo outParam = (MessagePartInfo) itr.next();
               
                Object value;
                if (client)
                    value = getClientParam(values, outParam, context);
                else
View Full Code Here


        }

        Binding binding = context.getBinding();
        for (Iterator itr = msg.getMessageParts().iterator(); itr.hasNext();)
        {
            MessagePartInfo p = (MessagePartInfo) itr.next();

            params.add( service.getBindingProvider().readParameter(p, message.getXMLStreamReader(), context) );

            nextEvent(message.getXMLStreamReader());
        }
View Full Code Here

            msg = operation.getOutputMessage();
        }
       
        for (Iterator itr = msg.getMessageParts().iterator(); itr.hasNext();)
        {
            MessagePartInfo p = (MessagePartInfo) itr.next();
            context.getService().getBindingProvider().writeParameter(p, writer, context, values[i]);
            i++;
        }
    }  
View Full Code Here

    {
        final List headerInfos = headerMsg.getMessageParts();
        Object result = null;
        for (Iterator itr = headerInfos.iterator(); itr.hasNext();)
        {
            MessagePartInfo header = (MessagePartInfo) itr.next();

            BindingProvider provider = context.getService().getBindingProvider();

            XMLStreamReader headerReader = getXMLStreamReader(context.getInMessage(), header);
            // check to see if there is a header to read
            if (headerReader == null) continue;
           
            Object headerVal = provider.readParameter(header, headerReader, context);

            // why the null check? In case there is a Holder class of some sort there.
            if(header.getIndex() == -1)
            {
                result = headerVal;
            }
            else
            if (paramArray[header.getIndex()] == null)
            {
                paramArray[header.getIndex()] = headerVal;
            }
        }
        return result;
    }
View Full Code Here

        if (params.size() < parts.size())
            throw new XFireFault("Not enough message parts were received for the operation.", XFireFault.SENDER);
       
        for (int i = 0; i < parts.size(); i++)
        {
            MessagePartInfo part = (MessagePartInfo) parts.get(i);
            newParams[part.getIndex()] = params.get(i);
        }
       
        // Case for filling in holders - in server mode
        if (!AbstractBinding.isClientModeOn(context) && outMsg != null)
        {
View Full Code Here

      MessagePartContainer outHeaderMsg) {
    Set headers = new HashSet();
    if (headerMsg != null) {
      for (Iterator iter = headerMsg.getMessageParts().iterator(); iter
          .hasNext();) {
        MessagePartInfo info = (MessagePartInfo) iter.next();
        headers.add(info.getName());
      }
    }

    if (outHeaderMsg != null) {
      for (Iterator iter = outHeaderMsg.getMessageParts().iterator(); iter
          .hasNext();) {
        MessagePartInfo info = (MessagePartInfo) iter.next();
        headers.add(info.getName());
      }
    }
    return headers.size();
  }
View Full Code Here

   */
  private void fillInHolders(MessagePartContainer msg, Object[] newParams)
    {
        for (Iterator itr = msg.getMessageParts().iterator(); itr.hasNext();)
        {
            MessagePartInfo part = (MessagePartInfo) itr.next();
            if (part.getIndex() >= 0)
            {
                try
                {
                    Object holder = part.getTypeClass().newInstance();
                    newParams[part.getIndex()] = holder;
                }
                catch (Exception e)
                {
                    throw new XFireRuntimeException("Could not instantiate holder class.", e);
                }
View Full Code Here

        Object[] body = (Object[]) context.getCurrentMessage().getBody();
       
        JDOMStreamWriter writer = new JDOMStreamWriter(context.getOutMessage().getOrCreateHeader());
        for (Iterator itr = headers.getMessageParts().iterator(); itr.hasNext();)
        {
            MessagePartInfo part = (MessagePartInfo) itr.next();
           
            Object value;
            if (part.getIndex() == -1)
                value = responseValue;
            else
                value = body[part.getIndex()];
           
            AbstractBinding.writeParameter(writer,
                                           context,
                                           value,
                                           part,
                                           part.getName().getNamespaceURI());
        }
    }
View Full Code Here

        else
            msg = operation.getInputMessage();
       
        while(STAXUtils.toNextElement(dr))
        {
            MessagePartInfo p = (MessagePartInfo) msg.getMessageParts().get(parameters.size());

            if (p == null)
            {
                throw new XFireFault("Parameter " + dr.getName() + " does not exist!",
                                     XFireFault.SENDER);
            }
           
            QName name;
            if (p.getSchemaType().isAbstract())
            {
                name = new QName(service.getTargetNamespace(), dr.getLocalName());
            }
            else
            {
                name = dr.getName();
            }
           
            if (!p.getName().equals(name))
            {
                throw new XFireFault("Parameter " + dr.getName() + " does not exist!",
                                     XFireFault.SENDER);
            }
           
View Full Code Here

    protected void initializeMessage(Service service, MessagePartContainer container, int type)
    {
        for (Iterator itr = container.getMessageParts().iterator(); itr.hasNext();)
        {
            MessagePartInfo part = (MessagePartInfo) itr.next();

            if (part.getSchemaType() == null)
            {
                part.setSchemaType(getParameterType(getTypeMapping(service), part, type));
            }
        }
    }
View Full Code Here

TOP

Related Classes of org.codehaus.xfire.service.MessagePartInfo

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.