package org.apache.ws.resource.properties.v2004_11.porttype.impl;
import org.apache.ws.resource.ResourceContext;
import org.apache.ws.resource.properties.NamespaceVersionHolder;
import org.apache.ws.resource.properties.impl.AbstractSetResourcePropertiesPortType;
import org.apache.ws.resource.properties.impl.AbstractXmlBeansResourcePropertyValueChangeEvent;
import org.apache.ws.resource.properties.v2004_11.porttype.UpdateResourcePropertiesPortType;
import org.apache.ws.resource.properties.v2004_11.impl.NamespaceVersionHolderImpl;
import org.apache.ws.resource.properties.v2004_11.impl.XmlBeansResourcePropertyValueChangeEvent;
import org.apache.ws.util.XmlBeanUtils;
import org.apache.xmlbeans.XmlObject;
import org.oasisOpen.docs.wsrf.x2004.x11.wsrfWSResourceProperties12Draft05.UpdateResourcePropertiesDocument;
import org.oasisOpen.docs.wsrf.x2004.x11.wsrfWSResourceProperties12Draft05.UpdateResourcePropertiesResponseDocument;
/**
* @author Ian Springer
*/
public class UpdateResourcePropertiesPortTypeImpl extends AbstractSetResourcePropertiesPortType implements UpdateResourcePropertiesPortType
{
private static final NamespaceVersionHolder NAMESPACE_SET = new NamespaceVersionHolderImpl() ;
/**
* Creates a new {@link UpdateResourcePropertiesPortTypeImpl} object.
*
* @param resourceContext DOCUMENT_ME
*/
public UpdateResourcePropertiesPortTypeImpl(ResourceContext resourceContext)
{
super(resourceContext);
}
/**
* DOCUMENT_ME
*
* @param requestDoc DOCUMENT_ME
* @return DOCUMENT_ME
*/
public UpdateResourcePropertiesResponseDocument updateResourceProperties(UpdateResourcePropertiesDocument requestDoc)
{
UpdateResourcePropertiesResponseDocument responseDoc = createResponseDocument();
UpdateResourcePropertiesDocument.UpdateResourceProperties requestElem = requestDoc.getUpdateResourceProperties();
XmlObject[] newPropElems = XmlBeanUtils.getChildElements( requestElem.getUpdate() );
updateResourceProperty( newPropElems );
return responseDoc;
}
private UpdateResourcePropertiesResponseDocument createResponseDocument()
{
UpdateResourcePropertiesResponseDocument responseDoc = UpdateResourcePropertiesResponseDocument.Factory.newInstance();
responseDoc.addNewUpdateResourcePropertiesResponse();
return responseDoc;
}
protected NamespaceVersionHolder getNamespaceSet()
{
return NAMESPACE_SET;
}
protected AbstractXmlBeansResourcePropertyValueChangeEvent getResourcePropertyValueChangeEvent(Object[] oldValue, Object[] newValue)
{
return new XmlBeansResourcePropertyValueChangeEvent(oldValue,newValue);
}
}