mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Big hunk of merge.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3265 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -48,7 +48,7 @@
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
<target name="gen-all-service-servers" depends="gen-auth-service-server, gen-repo-service-server, gen-content-service-server, gen-authoring-service-server, gen-classification-service-server, gen-action-service-server, gen-access-control-service-server, gen-administration-service-server" />
|
||||
<target name="gen-all-service-servers" depends="gen-auth-service-server, gen-repo-service-server, gen-content-service-server, gen-authoring-service-server, gen-classification-service-server, gen-action-service-server, gen-access-control-service-server, gen-administration-service-server, gen-dictionary-service-server" />
|
||||
|
||||
<target name="gen-auth-service-server" depends="init">
|
||||
<mkdir dir="${dir.src.java.generated}/org/alfresco/repo/webservice/authentication" />
|
||||
@@ -94,6 +94,20 @@
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
<target name="gen-dictionary-service-server" depends="init">
|
||||
<mkdir dir="${dir.src.java.generated}/org/alfresco/repo/webservice/dictionary" />
|
||||
<delete>
|
||||
<fileset dir="${dir.src.java.generated}/org/alfresco/repo/webservice/dictionary" />
|
||||
</delete>
|
||||
<wsdl2java url="${dir.src}/wsdl/dictionary-service.wsdl" output="${dir.src.java.generated}" serverSide="true" skeletondeploy="false" all="true">
|
||||
<mapping namespace="http://www.alfresco.org/ws/service/dictionary/1.0" package="org.alfresco.repo.webservice.dictionary" />
|
||||
<mapping namespace="http://www.alfresco.org/ws/model/content/1.0" package="org.alfresco.repo.webservice.types" />
|
||||
</wsdl2java>
|
||||
<delete>
|
||||
<fileset dir="${dir.src.java.generated}/org/alfresco/repo/webservice/dictionary" includes="${files.delete.include}" />
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
<target name="gen-classification-service-server" depends="init">
|
||||
<mkdir dir="${dir.src.java.generated}/org/alfresco/repo/webservice/classification" />
|
||||
<delete>
|
||||
|
@@ -0,0 +1,201 @@
|
||||
/**
|
||||
* ClassPredicate.java
|
||||
*
|
||||
* This file was auto-generated from WSDL
|
||||
* by the Apache Axis 1.3 Oct 05, 2005 (05:23:37 EDT) WSDL2Java emitter.
|
||||
*/
|
||||
|
||||
package org.alfresco.repo.webservice.dictionary;
|
||||
|
||||
public class ClassPredicate implements java.io.Serializable {
|
||||
private java.lang.String[] names;
|
||||
|
||||
private boolean followSubClass;
|
||||
|
||||
private boolean followSuperClass;
|
||||
|
||||
public ClassPredicate() {
|
||||
}
|
||||
|
||||
public ClassPredicate(
|
||||
java.lang.String[] names,
|
||||
boolean followSubClass,
|
||||
boolean followSuperClass) {
|
||||
this.names = names;
|
||||
this.followSubClass = followSubClass;
|
||||
this.followSuperClass = followSuperClass;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the names value for this ClassPredicate.
|
||||
*
|
||||
* @return names
|
||||
*/
|
||||
public java.lang.String[] getNames() {
|
||||
return names;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the names value for this ClassPredicate.
|
||||
*
|
||||
* @param names
|
||||
*/
|
||||
public void setNames(java.lang.String[] names) {
|
||||
this.names = names;
|
||||
}
|
||||
|
||||
public java.lang.String getNames(int i) {
|
||||
return this.names[i];
|
||||
}
|
||||
|
||||
public void setNames(int i, java.lang.String _value) {
|
||||
this.names[i] = _value;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the followSubClass value for this ClassPredicate.
|
||||
*
|
||||
* @return followSubClass
|
||||
*/
|
||||
public boolean isFollowSubClass() {
|
||||
return followSubClass;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the followSubClass value for this ClassPredicate.
|
||||
*
|
||||
* @param followSubClass
|
||||
*/
|
||||
public void setFollowSubClass(boolean followSubClass) {
|
||||
this.followSubClass = followSubClass;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the followSuperClass value for this ClassPredicate.
|
||||
*
|
||||
* @return followSuperClass
|
||||
*/
|
||||
public boolean isFollowSuperClass() {
|
||||
return followSuperClass;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the followSuperClass value for this ClassPredicate.
|
||||
*
|
||||
* @param followSuperClass
|
||||
*/
|
||||
public void setFollowSuperClass(boolean followSuperClass) {
|
||||
this.followSuperClass = followSuperClass;
|
||||
}
|
||||
|
||||
private java.lang.Object __equalsCalc = null;
|
||||
public synchronized boolean equals(java.lang.Object obj) {
|
||||
if (!(obj instanceof ClassPredicate)) return false;
|
||||
ClassPredicate other = (ClassPredicate) obj;
|
||||
if (obj == null) return false;
|
||||
if (this == obj) return true;
|
||||
if (__equalsCalc != null) {
|
||||
return (__equalsCalc == obj);
|
||||
}
|
||||
__equalsCalc = obj;
|
||||
boolean _equals;
|
||||
_equals = true &&
|
||||
((this.names==null && other.getNames()==null) ||
|
||||
(this.names!=null &&
|
||||
java.util.Arrays.equals(this.names, other.getNames()))) &&
|
||||
this.followSubClass == other.isFollowSubClass() &&
|
||||
this.followSuperClass == other.isFollowSuperClass();
|
||||
__equalsCalc = null;
|
||||
return _equals;
|
||||
}
|
||||
|
||||
private boolean __hashCodeCalc = false;
|
||||
public synchronized int hashCode() {
|
||||
if (__hashCodeCalc) {
|
||||
return 0;
|
||||
}
|
||||
__hashCodeCalc = true;
|
||||
int _hashCode = 1;
|
||||
if (getNames() != null) {
|
||||
for (int i=0;
|
||||
i<java.lang.reflect.Array.getLength(getNames());
|
||||
i++) {
|
||||
java.lang.Object obj = java.lang.reflect.Array.get(getNames(), i);
|
||||
if (obj != null &&
|
||||
!obj.getClass().isArray()) {
|
||||
_hashCode += obj.hashCode();
|
||||
}
|
||||
}
|
||||
}
|
||||
_hashCode += (isFollowSubClass() ? Boolean.TRUE : Boolean.FALSE).hashCode();
|
||||
_hashCode += (isFollowSuperClass() ? Boolean.TRUE : Boolean.FALSE).hashCode();
|
||||
__hashCodeCalc = false;
|
||||
return _hashCode;
|
||||
}
|
||||
|
||||
// Type metadata
|
||||
private static org.apache.axis.description.TypeDesc typeDesc =
|
||||
new org.apache.axis.description.TypeDesc(ClassPredicate.class, true);
|
||||
|
||||
static {
|
||||
typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "ClassPredicate"));
|
||||
org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
|
||||
elemField.setFieldName("names");
|
||||
elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "names"));
|
||||
elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
|
||||
elemField.setMinOccurs(0);
|
||||
elemField.setNillable(true);
|
||||
elemField.setMaxOccursUnbounded(true);
|
||||
typeDesc.addFieldDesc(elemField);
|
||||
elemField = new org.apache.axis.description.ElementDesc();
|
||||
elemField.setFieldName("followSubClass");
|
||||
elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "followSubClass"));
|
||||
elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean"));
|
||||
elemField.setNillable(false);
|
||||
typeDesc.addFieldDesc(elemField);
|
||||
elemField = new org.apache.axis.description.ElementDesc();
|
||||
elemField.setFieldName("followSuperClass");
|
||||
elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "followSuperClass"));
|
||||
elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean"));
|
||||
elemField.setNillable(false);
|
||||
typeDesc.addFieldDesc(elemField);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return type metadata object
|
||||
*/
|
||||
public static org.apache.axis.description.TypeDesc getTypeDesc() {
|
||||
return typeDesc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Custom Serializer
|
||||
*/
|
||||
public static org.apache.axis.encoding.Serializer getSerializer(
|
||||
java.lang.String mechType,
|
||||
java.lang.Class _javaType,
|
||||
javax.xml.namespace.QName _xmlType) {
|
||||
return
|
||||
new org.apache.axis.encoding.ser.BeanSerializer(
|
||||
_javaType, _xmlType, typeDesc);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Custom Deserializer
|
||||
*/
|
||||
public static org.apache.axis.encoding.Deserializer getDeserializer(
|
||||
java.lang.String mechType,
|
||||
java.lang.Class _javaType,
|
||||
javax.xml.namespace.QName _xmlType) {
|
||||
return
|
||||
new org.apache.axis.encoding.ser.BeanDeserializer(
|
||||
_javaType, _xmlType, typeDesc);
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,158 @@
|
||||
/**
|
||||
* DictionaryFault.java
|
||||
*
|
||||
* This file was auto-generated from WSDL
|
||||
* by the Apache Axis 1.3 Oct 05, 2005 (05:23:37 EDT) WSDL2Java emitter.
|
||||
*/
|
||||
|
||||
package org.alfresco.repo.webservice.dictionary;
|
||||
|
||||
public class DictionaryFault extends org.apache.axis.AxisFault implements java.io.Serializable {
|
||||
private int errorCode;
|
||||
|
||||
private java.lang.String message1;
|
||||
|
||||
public DictionaryFault() {
|
||||
}
|
||||
|
||||
public DictionaryFault(
|
||||
int errorCode,
|
||||
java.lang.String message1) {
|
||||
this.errorCode = errorCode;
|
||||
this.message1 = message1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the errorCode value for this DictionaryFault.
|
||||
*
|
||||
* @return errorCode
|
||||
*/
|
||||
public int getErrorCode() {
|
||||
return errorCode;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the errorCode value for this DictionaryFault.
|
||||
*
|
||||
* @param errorCode
|
||||
*/
|
||||
public void setErrorCode(int errorCode) {
|
||||
this.errorCode = errorCode;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the message1 value for this DictionaryFault.
|
||||
*
|
||||
* @return message1
|
||||
*/
|
||||
public java.lang.String getMessage1() {
|
||||
return message1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the message1 value for this DictionaryFault.
|
||||
*
|
||||
* @param message1
|
||||
*/
|
||||
public void setMessage1(java.lang.String message1) {
|
||||
this.message1 = message1;
|
||||
}
|
||||
|
||||
private java.lang.Object __equalsCalc = null;
|
||||
public synchronized boolean equals(java.lang.Object obj) {
|
||||
if (!(obj instanceof DictionaryFault)) return false;
|
||||
DictionaryFault other = (DictionaryFault) obj;
|
||||
if (obj == null) return false;
|
||||
if (this == obj) return true;
|
||||
if (__equalsCalc != null) {
|
||||
return (__equalsCalc == obj);
|
||||
}
|
||||
__equalsCalc = obj;
|
||||
boolean _equals;
|
||||
_equals = true &&
|
||||
this.errorCode == other.getErrorCode() &&
|
||||
((this.message1==null && other.getMessage1()==null) ||
|
||||
(this.message1!=null &&
|
||||
this.message1.equals(other.getMessage1())));
|
||||
__equalsCalc = null;
|
||||
return _equals;
|
||||
}
|
||||
|
||||
private boolean __hashCodeCalc = false;
|
||||
public synchronized int hashCode() {
|
||||
if (__hashCodeCalc) {
|
||||
return 0;
|
||||
}
|
||||
__hashCodeCalc = true;
|
||||
int _hashCode = 1;
|
||||
_hashCode += getErrorCode();
|
||||
if (getMessage1() != null) {
|
||||
_hashCode += getMessage1().hashCode();
|
||||
}
|
||||
__hashCodeCalc = false;
|
||||
return _hashCode;
|
||||
}
|
||||
|
||||
// Type metadata
|
||||
private static org.apache.axis.description.TypeDesc typeDesc =
|
||||
new org.apache.axis.description.TypeDesc(DictionaryFault.class, true);
|
||||
|
||||
static {
|
||||
typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "DictionaryFault"));
|
||||
org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
|
||||
elemField.setFieldName("errorCode");
|
||||
elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "errorCode"));
|
||||
elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
|
||||
elemField.setNillable(false);
|
||||
typeDesc.addFieldDesc(elemField);
|
||||
elemField = new org.apache.axis.description.ElementDesc();
|
||||
elemField.setFieldName("message1");
|
||||
elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/dictionary/1.0", "message"));
|
||||
elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
|
||||
elemField.setNillable(false);
|
||||
typeDesc.addFieldDesc(elemField);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return type metadata object
|
||||
*/
|
||||
public static org.apache.axis.description.TypeDesc getTypeDesc() {
|
||||
return typeDesc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Custom Serializer
|
||||
*/
|
||||
public static org.apache.axis.encoding.Serializer getSerializer(
|
||||
java.lang.String mechType,
|
||||
java.lang.Class _javaType,
|
||||
javax.xml.namespace.QName _xmlType) {
|
||||
return
|
||||
new org.apache.axis.encoding.ser.BeanSerializer(
|
||||
_javaType, _xmlType, typeDesc);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Custom Deserializer
|
||||
*/
|
||||
public static org.apache.axis.encoding.Deserializer getDeserializer(
|
||||
java.lang.String mechType,
|
||||
java.lang.Class _javaType,
|
||||
javax.xml.namespace.QName _xmlType) {
|
||||
return
|
||||
new org.apache.axis.encoding.ser.BeanDeserializer(
|
||||
_javaType, _xmlType, typeDesc);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Writes the exception data to the faultDetails
|
||||
*/
|
||||
public void writeDetails(javax.xml.namespace.QName qname, org.apache.axis.encoding.SerializationContext context) throws java.io.IOException {
|
||||
context.serialize(qname, null, this);
|
||||
}
|
||||
}
|
@@ -0,0 +1,32 @@
|
||||
/**
|
||||
* DictionaryServiceSoapPort.java
|
||||
*
|
||||
* This file was auto-generated from WSDL
|
||||
* by the Apache Axis 1.3 Oct 05, 2005 (05:23:37 EDT) WSDL2Java emitter.
|
||||
*/
|
||||
|
||||
package org.alfresco.repo.webservice.dictionary;
|
||||
|
||||
public interface DictionaryServiceSoapPort extends java.rmi.Remote {
|
||||
|
||||
/**
|
||||
* Retrieves the class definitions of types and aspects.
|
||||
*/
|
||||
public org.alfresco.repo.webservice.types.ClassDefinition[] getClasses(org.alfresco.repo.webservice.dictionary.ClassPredicate types, org.alfresco.repo.webservice.dictionary.ClassPredicate aspects) throws java.rmi.RemoteException, org.alfresco.repo.webservice.dictionary.DictionaryFault;
|
||||
|
||||
/**
|
||||
* Retrieves property definitions.
|
||||
*/
|
||||
public org.alfresco.repo.webservice.types.PropertyDefinition[] getProperties(java.lang.String[] propertyNames) throws java.rmi.RemoteException, org.alfresco.repo.webservice.dictionary.DictionaryFault;
|
||||
|
||||
/**
|
||||
* Retrieves association definitions.
|
||||
*/
|
||||
public org.alfresco.repo.webservice.types.AssociationDefinition[] getAssociations(java.lang.String[] associationNames) throws java.rmi.RemoteException, org.alfresco.repo.webservice.dictionary.DictionaryFault;
|
||||
|
||||
/**
|
||||
* Determines whether a type (or aspect) is a sub class of another
|
||||
* type (or aspect).
|
||||
*/
|
||||
public boolean isSubClass(java.lang.String className, java.lang.String isSubClassOfName) throws java.rmi.RemoteException, org.alfresco.repo.webservice.dictionary.DictionaryFault;
|
||||
}
|
@@ -0,0 +1,308 @@
|
||||
<!-- Use this file to deploy some handlers/chains and services -->
|
||||
<!-- Two ways to do this: -->
|
||||
<!-- java org.apache.axis.client.AdminClient deploy.wsdd -->
|
||||
<!-- after the axis server is running -->
|
||||
<!-- or -->
|
||||
<!-- java org.apache.axis.utils.Admin client|server deploy.wsdd -->
|
||||
<!-- from the same directory that the Axis engine runs -->
|
||||
|
||||
<deployment
|
||||
xmlns="http://xml.apache.org/axis/wsdd/"
|
||||
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||
|
||||
<!-- Services from DictionaryService WSDL service -->
|
||||
|
||||
<service name="DictionaryService" provider="java:RPC" style="wrapped" use="literal">
|
||||
<parameter name="wsdlTargetNamespace" value="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<parameter name="wsdlServiceElement" value="DictionaryService"/>
|
||||
<parameter name="schemaQualified" value="http://www.alfresco.org/ws/model/content/1.0,http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<parameter name="wsdlServicePort" value="DictionaryService"/>
|
||||
<parameter name="className" value="org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapBindingImpl"/>
|
||||
<parameter name="wsdlPortType" value="DictionaryServiceSoapPort"/>
|
||||
<parameter name="typeMappingVersion" value="1.2"/>
|
||||
<operation name="getClasses" qname="operNS:getClasses" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:getClassesReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:ClassDefinition" xmlns:rtns="http://www.alfresco.org/ws/model/content/1.0" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getClasses" >
|
||||
<parameter qname="pns:types" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:ClassPredicate" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<parameter qname="pns:aspects" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:ClassPredicate" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<operation name="getProperties" qname="operNS:getProperties" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:getPropertiesReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:PropertyDefinition" xmlns:rtns="http://www.alfresco.org/ws/model/content/1.0" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getProperties" >
|
||||
<parameter qname="pns:propertyNames" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<operation name="getAssociations" qname="operNS:getAssociations" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:getAssociationsReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:AssociationDefinition" xmlns:rtns="http://www.alfresco.org/ws/model/content/1.0" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getAssociations" >
|
||||
<parameter qname="pns:associationNames" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<operation name="isSubClass" qname="operNS:isSubClass" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:isSubClassReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:boolean" xmlns:rtns="http://www.w3.org/2001/XMLSchema" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/isSubClass" >
|
||||
<parameter qname="pns:className" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<parameter qname="pns:isSubClassOfName" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<parameter name="allowedMethods" value="getClasses getAssociations getProperties isSubClass"/>
|
||||
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ParentReference"
|
||||
type="java:org.alfresco.repo.webservice.types.ParentReference"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:QueryLanguageEnum"
|
||||
type="java:org.alfresco.repo.webservice.types.QueryLanguageEnum"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ClassDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.ClassDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Cardinality"
|
||||
type="java:org.alfresco.repo.webservice.types.Cardinality"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ContentFormat"
|
||||
type="java:org.alfresco.repo.webservice.types.ContentFormat"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Version"
|
||||
type="java:org.alfresco.repo.webservice.types.Version"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Predicate"
|
||||
type="java:org.alfresco.repo.webservice.types.Predicate"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Node"
|
||||
type="java:org.alfresco.repo.webservice.types.Node"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Path"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSetRow"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetRow"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSet"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSet"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSetMetaData"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetMetaData"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
qname="ns:ClassPredicate"
|
||||
type="java:org.alfresco.repo.webservice.dictionary.ClassPredicate"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:NodeDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.NodeDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Category"
|
||||
type="java:org.alfresco.repo.webservice.types.Category"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ValueDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.ValueDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ContentFormat>mimetype"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Query"
|
||||
type="java:org.alfresco.repo.webservice.types.Query"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:StoreEnum"
|
||||
type="java:org.alfresco.repo.webservice.types.StoreEnum"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Reference"
|
||||
type="java:org.alfresco.repo.webservice.types.Reference"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:UUID"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:NamedValue"
|
||||
type="java:org.alfresco.repo.webservice.types.NamedValue"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Name"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ResultSetRow>node"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetRowNode"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
qname="ns:DictionaryFault"
|
||||
type="java:org.alfresco.repo.webservice.dictionary.DictionaryFault"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ContentFormat>encoding"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Classification"
|
||||
type="java:org.alfresco.repo.webservice.types.Classification"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Store"
|
||||
type="java:org.alfresco.repo.webservice.types.Store"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>Store>address"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:AssociationDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.AssociationDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:RoleDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.RoleDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:PropertyDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.PropertyDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:VersionHistory"
|
||||
type="java:org.alfresco.repo.webservice.types.VersionHistory"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
</service>
|
||||
</deployment>
|
@@ -615,25 +615,7 @@ public class Utils
|
||||
int pos = 0;
|
||||
for (org.alfresco.service.cmr.dictionary.PropertyDefinition ddPropDef : props.values())
|
||||
{
|
||||
PropertyDefinition propDef = new PropertyDefinition();
|
||||
propDef.setName(ddPropDef.getName().toString());
|
||||
propDef.setDataType(ddPropDef.getDataType().getName().toString());
|
||||
propDef.setMandatory(ddPropDef.isMandatory());
|
||||
propDef.setReadOnly(ddPropDef.isProtected());
|
||||
if (ddPropDef.getDefaultValue() != null)
|
||||
{
|
||||
propDef.setDefaultValue(ddPropDef.getDefaultValue());
|
||||
}
|
||||
if (ddPropDef.getTitle() != null)
|
||||
{
|
||||
propDef.setTitle(ddPropDef.getTitle());
|
||||
}
|
||||
if (ddPropDef.getDescription() != null)
|
||||
{
|
||||
propDef.setDescription(ddPropDef.getDescription());
|
||||
}
|
||||
|
||||
// add it to the array
|
||||
PropertyDefinition propDef = setupPropertyDefObject(ddPropDef);
|
||||
propDefs[pos] = propDef;
|
||||
pos++;
|
||||
}
|
||||
@@ -642,8 +624,6 @@ public class Utils
|
||||
classDef.setProperties(propDefs);
|
||||
}
|
||||
|
||||
// TODO need to get the child associations as well !!
|
||||
|
||||
// represent the associations
|
||||
Map<QName, org.alfresco.service.cmr.dictionary.AssociationDefinition> assocs = ddClassDef.getAssociations();
|
||||
if (assocs != null)
|
||||
@@ -652,35 +632,7 @@ public class Utils
|
||||
int pos = 0;
|
||||
for (org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef : assocs.values())
|
||||
{
|
||||
AssociationDefinition assocDef = new AssociationDefinition();
|
||||
assocDef.setName(ddAssocDef.getName().toString());
|
||||
assocDef.setIsChild(ddAssocDef.isChild());
|
||||
if (ddAssocDef.getTitle() != null)
|
||||
{
|
||||
assocDef.setTitle(ddAssocDef.getTitle());
|
||||
}
|
||||
if (ddAssocDef.getDescription() != null)
|
||||
{
|
||||
assocDef.setDescription(ddAssocDef.getDescription());
|
||||
}
|
||||
|
||||
RoleDefinition sourceRole = new RoleDefinition();
|
||||
if (ddAssocDef.getSourceRoleName() != null)
|
||||
{
|
||||
sourceRole.setName(ddAssocDef.getSourceRoleName().toString());
|
||||
}
|
||||
sourceRole.setCardinality(setupSourceCardinalityObject(ddAssocDef));
|
||||
assocDef.setSourceRole(sourceRole);
|
||||
|
||||
RoleDefinition targetRole = new RoleDefinition();
|
||||
if (ddAssocDef.getTargetRoleName() != null)
|
||||
{
|
||||
targetRole.setName(ddAssocDef.getTargetRoleName().toString());
|
||||
}
|
||||
targetRole.setCardinality(setupTargetCardinalityObject(ddAssocDef));;
|
||||
assocDef.setTargetRole(targetRole);
|
||||
assocDef.setTargetClass(ddAssocDef.getTargetClass().getName().toString());
|
||||
|
||||
AssociationDefinition assocDef = setupAssociationDefObject(ddAssocDef);
|
||||
assocDefs[pos] = assocDef;
|
||||
pos++;
|
||||
}
|
||||
@@ -691,6 +643,76 @@ public class Utils
|
||||
return classDef;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a PropertyDefinition web service type object for the given
|
||||
* repository PropertyDefinition
|
||||
*
|
||||
* @param ddPropertyDef The repository PropertyDefinition to generate
|
||||
* @return The web service PropertyDefinition representation
|
||||
*/
|
||||
public static PropertyDefinition setupPropertyDefObject(org.alfresco.service.cmr.dictionary.PropertyDefinition ddPropDef)
|
||||
{
|
||||
PropertyDefinition propDef = new PropertyDefinition();
|
||||
propDef.setName(ddPropDef.getName().toString());
|
||||
propDef.setDataType(ddPropDef.getDataType().getName().toString());
|
||||
propDef.setMandatory(ddPropDef.isMandatory());
|
||||
propDef.setReadOnly(ddPropDef.isProtected());
|
||||
if (ddPropDef.getDefaultValue() != null)
|
||||
{
|
||||
propDef.setDefaultValue(ddPropDef.getDefaultValue());
|
||||
}
|
||||
if (ddPropDef.getTitle() != null)
|
||||
{
|
||||
propDef.setTitle(ddPropDef.getTitle());
|
||||
}
|
||||
if (ddPropDef.getDescription() != null)
|
||||
{
|
||||
propDef.setDescription(ddPropDef.getDescription());
|
||||
}
|
||||
return propDef;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an AssociationDefinition web service type object for the given
|
||||
* repository AssociationDefinition
|
||||
*
|
||||
* @param ddAssociationDef The repository AssociationDefinition to generate
|
||||
* @return The web service AssociationDefinition representation
|
||||
*/
|
||||
public static AssociationDefinition setupAssociationDefObject(org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef)
|
||||
{
|
||||
AssociationDefinition assocDef = new AssociationDefinition();
|
||||
assocDef.setName(ddAssocDef.getName().toString());
|
||||
assocDef.setIsChild(ddAssocDef.isChild());
|
||||
if (ddAssocDef.getTitle() != null)
|
||||
{
|
||||
assocDef.setTitle(ddAssocDef.getTitle());
|
||||
}
|
||||
if (ddAssocDef.getDescription() != null)
|
||||
{
|
||||
assocDef.setDescription(ddAssocDef.getDescription());
|
||||
}
|
||||
|
||||
RoleDefinition sourceRole = new RoleDefinition();
|
||||
if (ddAssocDef.getSourceRoleName() != null)
|
||||
{
|
||||
sourceRole.setName(ddAssocDef.getSourceRoleName().toString());
|
||||
}
|
||||
sourceRole.setCardinality(setupSourceCardinalityObject(ddAssocDef));
|
||||
assocDef.setSourceRole(sourceRole);
|
||||
|
||||
RoleDefinition targetRole = new RoleDefinition();
|
||||
if (ddAssocDef.getTargetRoleName() != null)
|
||||
{
|
||||
targetRole.setName(ddAssocDef.getTargetRoleName().toString());
|
||||
}
|
||||
targetRole.setCardinality(setupTargetCardinalityObject(ddAssocDef));;
|
||||
assocDef.setTargetRole(targetRole);
|
||||
assocDef.setTargetClass(ddAssocDef.getTargetClass().getName().toString());
|
||||
|
||||
return assocDef;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a web service Cardinality type for the source from the given repository AssociationDefinition
|
||||
*
|
||||
|
@@ -0,0 +1,312 @@
|
||||
/*
|
||||
* Copyright (C) 2005 Alfresco, Inc.
|
||||
*
|
||||
* Licensed under the Mozilla Public License version 1.1
|
||||
* with a permitted attribution clause. You may obtain a
|
||||
* copy of the License at
|
||||
*
|
||||
* http://www.alfresco.org/legal/license.txt
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||
* either express or implied. See the License for the specific
|
||||
* language governing permissions and limitations under the
|
||||
* License.
|
||||
*/
|
||||
package org.alfresco.repo.webservice.dictionary;
|
||||
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.error.AlfrescoRuntimeException;
|
||||
import org.alfresco.repo.webservice.AbstractWebService;
|
||||
import org.alfresco.repo.webservice.Utils;
|
||||
import org.alfresco.repo.webservice.dictionary.ClassPredicate;
|
||||
import org.alfresco.repo.webservice.dictionary.DictionaryFault;
|
||||
import org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapPort;
|
||||
import org.alfresco.repo.webservice.types.AssociationDefinition;
|
||||
import org.alfresco.repo.webservice.types.ClassDefinition;
|
||||
import org.alfresco.repo.webservice.types.PropertyDefinition;
|
||||
import org.alfresco.service.cmr.dictionary.DictionaryException;
|
||||
import org.alfresco.service.cmr.dictionary.DictionaryService;
|
||||
import org.alfresco.service.cmr.dictionary.InvalidClassException;
|
||||
import org.alfresco.service.namespace.NamespaceService;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
/**
|
||||
* Web service implementation of the DictionaryService. The WSDL for this
|
||||
* service can be accessed from
|
||||
* http://localhost:8080/alfresco/wsdl/dictionary-service.wsdl
|
||||
*
|
||||
* @author davidc
|
||||
*/
|
||||
public class DictionaryWebService extends AbstractWebService implements DictionaryServiceSoapPort
|
||||
{
|
||||
private static Log logger = LogFactory.getLog(DictionaryWebService.class);
|
||||
|
||||
// dependencies
|
||||
private DictionaryService dictionaryService;
|
||||
private NamespaceService namespaceService;
|
||||
|
||||
|
||||
/**
|
||||
* Sets the instance of the DictionaryService to be used
|
||||
*
|
||||
* @param dictionaryService The DictionaryService
|
||||
*/
|
||||
public void setDictionaryService(DictionaryService dictionaryService)
|
||||
{
|
||||
this.dictionaryService = dictionaryService;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the instance of the NamespaceService to be used
|
||||
*/
|
||||
public void setNamespaceService(NamespaceService namespaceService)
|
||||
{
|
||||
this.namespaceService = namespaceService;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapPort#getClasses(org.alfresco.repo.webservice.dictionary.ClassPredicate[], org.alfresco.repo.webservice.dictionary.ClassPredicate[])
|
||||
*/
|
||||
public ClassDefinition[] getClasses(ClassPredicate types, ClassPredicate aspects) throws RemoteException, DictionaryFault
|
||||
{
|
||||
try
|
||||
{
|
||||
Set<org.alfresco.service.cmr.dictionary.ClassDefinition> classDefs = new HashSet<org.alfresco.service.cmr.dictionary.ClassDefinition>();
|
||||
classDefs.addAll(getClassDefs(types, false));
|
||||
classDefs.addAll(getClassDefs(aspects, true));
|
||||
|
||||
List<ClassDefinition> wsClassDefs = new ArrayList<ClassDefinition>(classDefs.size());
|
||||
for (org.alfresco.service.cmr.dictionary.ClassDefinition classDef : classDefs)
|
||||
{
|
||||
wsClassDefs.add(Utils.setupClassDefObject(classDef));
|
||||
}
|
||||
|
||||
return wsClassDefs.toArray(new ClassDefinition[wsClassDefs.size()]);
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
{
|
||||
logger.error("Unexpected error occurred", e);
|
||||
}
|
||||
throw new DictionaryFault(0, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapPort#getProperties(java.lang.String[])
|
||||
*/
|
||||
public PropertyDefinition[] getProperties(String[] propertyNames) throws RemoteException, DictionaryFault
|
||||
{
|
||||
try
|
||||
{
|
||||
PropertyDefinition[] propDefs = new PropertyDefinition[propertyNames.length];
|
||||
|
||||
int i = 0;
|
||||
for (String propertyName : propertyNames)
|
||||
{
|
||||
QName propertyQName = QName.createQName(propertyName, namespaceService);
|
||||
org.alfresco.service.cmr.dictionary.PropertyDefinition ddPropDef = dictionaryService.getProperty(propertyQName);
|
||||
if (ddPropDef == null)
|
||||
{
|
||||
throw new AlfrescoRuntimeException("Property propertyName does not exist.");
|
||||
}
|
||||
propDefs[i++] = Utils.setupPropertyDefObject(ddPropDef);
|
||||
}
|
||||
|
||||
return propDefs;
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
{
|
||||
logger.error("Unexpected error occurred", e);
|
||||
}
|
||||
throw new DictionaryFault(0, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapPort#getAssociations(java.lang.String[])
|
||||
*/
|
||||
public AssociationDefinition[] getAssociations(String[] associationNames) throws RemoteException, DictionaryFault
|
||||
{
|
||||
try
|
||||
{
|
||||
AssociationDefinition[] assocDefs = new AssociationDefinition[associationNames.length];
|
||||
|
||||
int i = 0;
|
||||
for (String associationName : associationNames)
|
||||
{
|
||||
QName associationQName = QName.createQName(associationName, namespaceService);
|
||||
org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef = dictionaryService.getAssociation(associationQName);
|
||||
if (ddAssocDef == null)
|
||||
{
|
||||
throw new AlfrescoRuntimeException("Property propertyName does not exist.");
|
||||
}
|
||||
assocDefs[i++] = Utils.setupAssociationDefObject(ddAssocDef);
|
||||
}
|
||||
|
||||
return assocDefs;
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
{
|
||||
logger.error("Unexpected error occurred", e);
|
||||
}
|
||||
throw new DictionaryFault(0, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapPort#isSubClass(java.lang.String, java.lang.String)
|
||||
*/
|
||||
public boolean isSubClass(String className, String isSubClassOfName) throws RemoteException, DictionaryFault
|
||||
{
|
||||
try
|
||||
{
|
||||
QName classQName = QName.createQName(className, namespaceService);
|
||||
QName isSubClassOfQName = QName.createQName(isSubClassOfName, namespaceService);
|
||||
return dictionaryService.isSubClass(classQName, isSubClassOfQName);
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
{
|
||||
logger.error("Unexpected error occurred", e);
|
||||
}
|
||||
throw new DictionaryFault(0, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Retrieve class definitions that match the provided class predicate
|
||||
*
|
||||
* @param predicate the class predicate to filter by
|
||||
* @param forAspects futher filtering on type or aspect
|
||||
* @return class definitions that match
|
||||
*/
|
||||
private Set<org.alfresco.service.cmr.dictionary.ClassDefinition> getClassDefs(ClassPredicate predicate, boolean forAspects)
|
||||
{
|
||||
Set<org.alfresco.service.cmr.dictionary.ClassDefinition> classDefs = new HashSet<org.alfresco.service.cmr.dictionary.ClassDefinition>();
|
||||
if (predicate != null)
|
||||
{
|
||||
String[] predicateTypeNames = predicate.getNames();
|
||||
if (predicateTypeNames != null)
|
||||
{
|
||||
// predicate class names have been provided, therefore retrieve class definitions for those
|
||||
for (String predicateTypeName : predicateTypeNames)
|
||||
{
|
||||
QName classQName = QName.createQName(predicateTypeName, namespaceService);
|
||||
org.alfresco.service.cmr.dictionary.ClassDefinition classDef = dictionaryService.getClass(classQName);
|
||||
if (classDef == null || classDef.isAspect() != forAspects)
|
||||
{
|
||||
throw new InvalidClassException(classQName);
|
||||
}
|
||||
classDefs.add(classDef);
|
||||
}
|
||||
|
||||
// also retrieve sub-classes and super-classes as specified by predicate
|
||||
if (predicate.isFollowSuperClass() || predicate.isFollowSubClass())
|
||||
{
|
||||
Set<org.alfresco.service.cmr.dictionary.ClassDefinition> touchedClassDefs = new HashSet<org.alfresco.service.cmr.dictionary.ClassDefinition>();
|
||||
for (org.alfresco.service.cmr.dictionary.ClassDefinition classDef : classDefs)
|
||||
{
|
||||
if (predicate.isFollowSuperClass())
|
||||
{
|
||||
getSuperClasses(classDef, touchedClassDefs, true);
|
||||
}
|
||||
else if (predicate.isFollowSubClass())
|
||||
{
|
||||
getSubClasses(classDef, touchedClassDefs, true);
|
||||
}
|
||||
}
|
||||
classDefs.addAll(touchedClassDefs);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// return all classes
|
||||
Collection<QName> classQNames = (forAspects) ? dictionaryService.getAllAspects() : dictionaryService.getAllTypes();
|
||||
for (QName classQName : classQNames)
|
||||
{
|
||||
classDefs.add(dictionaryService.getClass(classQName));
|
||||
}
|
||||
}
|
||||
|
||||
return classDefs;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Retrieve the super-class of the specified class
|
||||
*
|
||||
* @param classDef the class definition to retrieve super-classes for
|
||||
* @param superClasses the collection to place super-classes into
|
||||
* @param recurse true => recurse down the sub-class hierarchy
|
||||
*/
|
||||
private void getSuperClasses(org.alfresco.service.cmr.dictionary.ClassDefinition classDef, Set<org.alfresco.service.cmr.dictionary.ClassDefinition> superClasses, boolean recurse)
|
||||
{
|
||||
QName superClass = classDef.getParentName();
|
||||
if (superClass != null)
|
||||
{
|
||||
org.alfresco.service.cmr.dictionary.ClassDefinition superClassDef = dictionaryService.getClass(superClass);
|
||||
superClasses.add(superClassDef);
|
||||
if (recurse)
|
||||
{
|
||||
getSuperClasses(superClassDef, superClasses, recurse);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Retrieve the sub-class of the specified class
|
||||
*
|
||||
* @param classDef the class definition to retrieve sub-classes for
|
||||
* @param superClasses the collection to place sub-classes into
|
||||
* @param recurse true => recurse up the super-class hierarchy
|
||||
*/
|
||||
private void getSubClasses(org.alfresco.service.cmr.dictionary.ClassDefinition classDef, Set<org.alfresco.service.cmr.dictionary.ClassDefinition> subClasses, boolean recurse)
|
||||
{
|
||||
QName superClass = classDef.getName();
|
||||
Collection<QName> candidates = (classDef.isAspect()) ? dictionaryService.getAllAspects() : dictionaryService.getAllTypes();
|
||||
|
||||
// Note: this is the brute force way of finding sub-classes
|
||||
// TODO: Add support into Dictionary for retrieving sub-classes
|
||||
for (QName candidate : candidates)
|
||||
{
|
||||
if (dictionaryService.isSubClass(candidate, superClass) && !candidate.equals(superClass))
|
||||
{
|
||||
org.alfresco.service.cmr.dictionary.ClassDefinition subClassDef = dictionaryService.getClass(candidate);
|
||||
subClasses.add(subClassDef);
|
||||
if (recurse)
|
||||
{
|
||||
getSubClasses(subClassDef, subClasses, recurse);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@@ -83,6 +83,15 @@
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="dictionaryWebService" class="org.alfresco.repo.webservice.dictionary.DictionaryWebService">
|
||||
<property name="namespaceService">
|
||||
<ref bean="NamespaceService"/>
|
||||
</property>
|
||||
<property name="dictionaryService">
|
||||
<ref bean="DictionaryService"/>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="contentWebService" class="org.alfresco.repo.webservice.content.ContentWebService">
|
||||
<property name="nodeService">
|
||||
<ref bean="NodeService"/>
|
||||
|
@@ -3035,6 +3035,303 @@
|
||||
/>
|
||||
</service>
|
||||
|
||||
<service name="DictionaryService" provider="java:SpringRPC" style="wrapped" use="literal">
|
||||
<documentation>Dictionary web service API.</documentation>
|
||||
<wsdlFile>/wsdl/dictionary-service.wsdl</wsdlFile>
|
||||
<parameter name="springBean" value="dictionaryWebService"/>
|
||||
<requestFlow>
|
||||
<handler type="CreateSpringTicketCallback"/>
|
||||
<handler type="WSSecurity"/>
|
||||
<handler type="QueryConfigHandler"/>
|
||||
</requestFlow>
|
||||
<parameter name="wsdlTargetNamespace" value="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<parameter name="wsdlServiceElement" value="DictionaryService"/>
|
||||
<parameter name="schemaQualified" value="http://www.alfresco.org/ws/model/content/1.0,http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
<parameter name="wsdlServicePort" value="DictionaryService"/>
|
||||
<parameter name="className" value="org.alfresco.repo.webservice.dictionary.DictionaryServiceSoapBindingImpl"/>
|
||||
<parameter name="wsdlPortType" value="DictionaryServiceSoapPort"/>
|
||||
<parameter name="typeMappingVersion" value="1.2"/>
|
||||
<operation name="getProperties" qname="operNS:getProperties" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:getPropertiesReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:PropertyDefinition" xmlns:rtns="http://www.alfresco.org/ws/model/content/1.0" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getProperties" >
|
||||
<parameter qname="pns:propertyNames" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<operation name="getAssociations" qname="operNS:getAssociations" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:getAssociationsReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:AssociationDefinition" xmlns:rtns="http://www.alfresco.org/ws/model/content/1.0" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getAssociations" >
|
||||
<parameter qname="pns:associationNames" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<operation name="isSubClass" qname="operNS:isSubClass" xmlns:operNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnQName="retNS:isSubClassReturn" xmlns:retNS="http://www.alfresco.org/ws/service/dictionary/1.0" returnType="rtns:boolean" xmlns:rtns="http://www.w3.org/2001/XMLSchema" soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/isSubClass" >
|
||||
<parameter qname="pns:className" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<parameter qname="pns:isSubClassOfName" xmlns:pns="http://www.alfresco.org/ws/service/dictionary/1.0" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
|
||||
<fault name="DictionaryFault" qname="fns:DictionaryFault" xmlns:fns="http://www.alfresco.org/ws/service/dictionary/1.0" class="org.alfresco.repo.webservice.dictionary.DictionaryFault" type="tns:DictionaryFault" xmlns:tns="http://www.alfresco.org/ws/service/dictionary/1.0"/>
|
||||
</operation>
|
||||
<parameter name="allowedMethods" value="getClasses getAssociations getProperties isSubClass"/>
|
||||
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ParentReference"
|
||||
type="java:org.alfresco.repo.webservice.types.ParentReference"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:QueryLanguageEnum"
|
||||
type="java:org.alfresco.repo.webservice.types.QueryLanguageEnum"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ClassDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.ClassDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Cardinality"
|
||||
type="java:org.alfresco.repo.webservice.types.Cardinality"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ContentFormat"
|
||||
type="java:org.alfresco.repo.webservice.types.ContentFormat"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Version"
|
||||
type="java:org.alfresco.repo.webservice.types.Version"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Node"
|
||||
type="java:org.alfresco.repo.webservice.types.Node"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Predicate"
|
||||
type="java:org.alfresco.repo.webservice.types.Predicate"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Path"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSetRow"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetRow"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSet"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSet"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ResultSetMetaData"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetMetaData"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
qname="ns:ClassPredicate"
|
||||
type="java:org.alfresco.repo.webservice.dictionary.ClassPredicate"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:NodeDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.NodeDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Category"
|
||||
type="java:org.alfresco.repo.webservice.types.Category"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:ValueDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.ValueDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ContentFormat>mimetype"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Query"
|
||||
type="java:org.alfresco.repo.webservice.types.Query"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:StoreEnum"
|
||||
type="java:org.alfresco.repo.webservice.types.StoreEnum"
|
||||
serializer="org.apache.axis.encoding.ser.EnumSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.EnumDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Reference"
|
||||
type="java:org.alfresco.repo.webservice.types.Reference"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:UUID"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:NamedValue"
|
||||
type="java:org.alfresco.repo.webservice.types.NamedValue"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Name"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ResultSetRow>node"
|
||||
type="java:org.alfresco.repo.webservice.types.ResultSetRowNode"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
qname="ns:DictionaryFault"
|
||||
type="java:org.alfresco.repo.webservice.dictionary.DictionaryFault"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>ContentFormat>encoding"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Classification"
|
||||
type="java:org.alfresco.repo.webservice.types.Classification"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:Store"
|
||||
type="java:org.alfresco.repo.webservice.types.Store"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:>Store>address"
|
||||
type="java:java.lang.String"
|
||||
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:AssociationDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.AssociationDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:RoleDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.RoleDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:PropertyDefinition"
|
||||
type="java:org.alfresco.repo.webservice.types.PropertyDefinition"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
<typeMapping
|
||||
xmlns:ns="http://www.alfresco.org/ws/model/content/1.0"
|
||||
qname="ns:VersionHistory"
|
||||
type="java:org.alfresco.repo.webservice.types.VersionHistory"
|
||||
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
|
||||
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||
encodingStyle=""
|
||||
/>
|
||||
</service>
|
||||
|
||||
<transport name="http">
|
||||
<requestFlow>
|
||||
<handler type="URLMapper"/>
|
||||
|
228
source/wsdl/dictionary-service.wsdl
Normal file
228
source/wsdl/dictionary-service.wsdl
Normal file
@@ -0,0 +1,228 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<wsdl:definitions name="dictionary-service"
|
||||
targetNamespace="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
xmlns:apachesoap="http://xml.apache.org/xml-soap"
|
||||
xmlns:dict="http://www.alfresco.org/ws/service/dictionary/1.0"
|
||||
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
|
||||
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:cms="http://www.alfresco.org/ws/model/content/1.0">
|
||||
<!-- ************************************** -->
|
||||
<!-- Copyright Alfresco Software, Inc. 2005 -->
|
||||
<!-- ************************************** -->
|
||||
<wsdl:import namespace="http://www.alfresco.org/model/content/1.0" location="types.xsd" />
|
||||
<wsdl:types>
|
||||
<schema elementFormDefault="qualified" targetNamespace="http://www.alfresco.org/ws/service/dictionary/1.0" xmlns="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<complexType name="ClassPredicate">
|
||||
<sequence>
|
||||
<element name="names" type="xsd:string" maxOccurs="unbounded" minOccurs="0" nillable="true"/>
|
||||
<element name="followSubClass" type="xsd:boolean"/>
|
||||
<element name="followSuperClass" type="xsd:boolean"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<element name="ClassPredicate" type="dict:ClassPredicate"/>
|
||||
|
||||
<complexType name="DictionaryFault">
|
||||
<sequence>
|
||||
<element name="errorCode" type="xsd:int"/>
|
||||
<element name="message" type="xsd:string"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<element name="DictionaryFault" type="dict:DictionaryFault"/>
|
||||
|
||||
<!-- Method Definitions -->
|
||||
|
||||
<element name="getClasses">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="types" type="dict:ClassPredicate"/>
|
||||
<element name="aspects" type="dict:ClassPredicate"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getClassesResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="getClassesReturn" type="cms:ClassDefinition" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getProperties">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="propertyNames" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getPropertiesResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="getPropertiesReturn" type="cms:PropertyDefinition" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getAssociations">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="associationNames" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getAssociationsResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="getAssociationsReturn" type="cms:AssociationDefinition" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="isSubClass">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="className" type="xsd:string"/>
|
||||
<element name="isSubClassOfName" type="xsd:string"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="isSubClassResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="isSubClassReturn" type="xsd:boolean"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
</schema>
|
||||
</wsdl:types>
|
||||
|
||||
<wsdl:message name="getClassesRequest">
|
||||
<wsdl:part element="dict:getClasses" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getClassesResponse">
|
||||
<wsdl:part element="dict:getClassesResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getPropertiesRequest">
|
||||
<wsdl:part element="dict:getProperties" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getPropertiesResponse">
|
||||
<wsdl:part element="dict:getPropertiesResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getAssociationsRequest">
|
||||
<wsdl:part element="dict:getAssociations" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getAssociationsResponse">
|
||||
<wsdl:part element="dict:getAssociationsResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="isSubClassRequest">
|
||||
<wsdl:part element="dict:isSubClass" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="isSubClassResponse">
|
||||
<wsdl:part element="dict:isSubClassResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="DictionaryFault">
|
||||
<wsdl:part element="dict:DictionaryFault" name="fault"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="DictionaryServiceSoapPort">
|
||||
<wsdl:operation name="getClasses">
|
||||
<wsdl:documentation>Retrieves the class definitions of types and aspects.</wsdl:documentation>
|
||||
<wsdl:input message="dict:getClassesRequest" name="getClassesRequest"/>
|
||||
<wsdl:output message="dict:getClassesResponse" name="getClassesResponse"/>
|
||||
<wsdl:fault message="dict:DictionaryFault" name="DictionaryFault"/>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getProperties">
|
||||
<wsdl:documentation>Retrieves property definitions.</wsdl:documentation>
|
||||
<wsdl:input message="dict:getPropertiesRequest" name="getPropertiesRequest"/>
|
||||
<wsdl:output message="dict:getPropertiesResponse" name="getPropertiesResponse"/>
|
||||
<wsdl:fault message="dict:DictionaryFault" name="DictionaryFault"/>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getAssociations">
|
||||
<wsdl:documentation>Retrieves association definitions.</wsdl:documentation>
|
||||
<wsdl:input message="dict:getAssociationsRequest" name="getAssociationsRequest"/>
|
||||
<wsdl:output message="dict:getAssociationsResponse" name="getAssociationsResponse"/>
|
||||
<wsdl:fault message="dict:DictionaryFault" name="DictionaryFault"/>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="isSubClass">
|
||||
<wsdl:documentation>Determines whether a type (or aspect) is a sub class of another type (or aspect).</wsdl:documentation>
|
||||
<wsdl:input message="dict:isSubClassRequest" name="isSubClassRequest"/>
|
||||
<wsdl:output message="dict:isSubClassResponse" name="isSubClassResponse"/>
|
||||
<wsdl:fault message="dict:DictionaryFault" name="DictionaryFault"/>
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="DictionaryServiceSoapBinding" type="dict:DictionaryServiceSoapPort">
|
||||
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
|
||||
<wsdl:operation name="getClasses">
|
||||
<wsdlsoap:operation soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getClasses"/>
|
||||
<wsdl:input name="getClassesRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getClassesResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
<wsdl:fault name="DictionaryFault">
|
||||
<wsdlsoap:fault namespace="http://www.alfresco.org/ws/service/dictionary/1.0" use="literal" name="DictionaryFault"/>
|
||||
</wsdl:fault>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getProperties">
|
||||
<wsdlsoap:operation soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getProperties"/>
|
||||
<wsdl:input name="getPropertiesRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getPropertiesResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
<wsdl:fault name="DictionaryFault">
|
||||
<wsdlsoap:fault namespace="http://www.alfresco.org/ws/service/dictionary/1.0" use="literal" name="DictionaryFault"/>
|
||||
</wsdl:fault>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getAssociations">
|
||||
<wsdlsoap:operation soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/getAssociations"/>
|
||||
<wsdl:input name="getAssociationsRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getAssociationsResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
<wsdl:fault name="DictionaryFault">
|
||||
<wsdlsoap:fault namespace="http://www.alfresco.org/ws/service/dictionary/1.0" use="literal" name="DictionaryFault"/>
|
||||
</wsdl:fault>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="isSubClass">
|
||||
<wsdlsoap:operation soapAction="http://www.alfresco.org/ws/service/dictionary/1.0/isSubClass"/>
|
||||
<wsdl:input name="isSubClassRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="isSubClassResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
<wsdl:fault name="DictionaryFault">
|
||||
<wsdlsoap:fault namespace="http://www.alfresco.org/ws/service/dictionary/1.0" use="literal" name="DictionaryFault"/>
|
||||
</wsdl:fault>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="DictionaryService">
|
||||
<wsdl:documentation>Provides read access to the Repository Dictionary.</wsdl:documentation>
|
||||
<wsdl:port binding="dict:DictionaryServiceSoapBinding" name="DictionaryService">
|
||||
<wsdlsoap:address location="http://localhost:8080/alfresco/api/DictionaryService"/>
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
</wsdl:definitions>
|
@@ -210,7 +210,7 @@
|
||||
<xsd:element name="name" type="cms:Name"></xsd:element>
|
||||
<xsd:element name="isMultiValue" type="xsd:boolean" nillable="true"></xsd:element>
|
||||
<xsd:element name="value" type="xsd:string" nillable="true"></xsd:element>
|
||||
<xsd:element name="values" type="xsd:string" nullable="true" maxOccurs="unbounded" minOccurs="0"></xsd:element>
|
||||
<xsd:element name="values" type="xsd:string" nillable="true" maxOccurs="unbounded" minOccurs="0"></xsd:element>
|
||||
</xsd:sequence>
|
||||
</xsd:complexType>
|
||||
|
||||
|
Reference in New Issue
Block a user