From b0a30c2155f7f01cfbbec60f42c0753740319da7 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 22 Jul 2014 14:13:46 +0000 Subject: [PATCH] Merged HEAD-BUG-FIX (5.0/Cloud) to HEAD (5.0/Cloud) 76305: Merged EOL2 (5.0.0.EOL2) to HEAD-BUG-FIX (5.0/Cloud) 76026: ACE-2012 EOL Original SOAP API (CML) - removed. Based on BRANCHES/DEV/EOL:r73833,73932 and CMIS EOL removal merge. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@77579 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .classpath | 47 +- config/META-INF/cxf/org.apache.cxf.Logger | 1 - .../org.apache.axis.deployment.wsdd.Provider | 1 - config/alfresco/cxf/cxf.xml | 129 - .../web-services-application-context.xml | 314 - pom.xml | 83 - .../org/alfresco/repo/cmis/ws/ACLService.java | 77 - .../alfresco/repo/cmis/ws/ACLServicePort.java | 55 - .../repo/cmis/ws/AddObjectToFolder.java | 177 - .../cmis/ws/AddObjectToFolderResponse.java | 65 - .../org/alfresco/repo/cmis/ws/ApplyACL.java | 204 - .../repo/cmis/ws/ApplyACLResponse.java | 64 - .../alfresco/repo/cmis/ws/ApplyPolicy.java | 150 - .../repo/cmis/ws/ApplyPolicyResponse.java | 65 - .../org/alfresco/repo/cmis/ws/Aspects.java | 99 - .../alfresco/repo/cmis/ws/CancelCheckOut.java | 122 - .../repo/cmis/ws/CancelCheckOutResponse.java | 65 - .../org/alfresco/repo/cmis/ws/CheckIn.java | 325 - .../repo/cmis/ws/CheckInResponse.java | 94 - .../org/alfresco/repo/cmis/ws/CheckOut.java | 122 - .../repo/cmis/ws/CheckOutResponse.java | 113 - .../repo/cmis/ws/CmisACLCapabilityType.java | 157 - .../alfresco/repo/cmis/ws/CmisACLType.java | 152 - .../cmis/ws/CmisAccessControlEntryType.java | 152 - .../cmis/ws/CmisAccessControlListType.java | 105 - .../ws/CmisAccessControlPrincipalType.java | 100 - .../cmis/ws/CmisAllowableActionsType.java | 879 -- .../repo/cmis/ws/CmisChangeEventType.java | 131 - .../org/alfresco/repo/cmis/ws/CmisChoice.java | 96 - .../repo/cmis/ws/CmisChoiceBoolean.java | 103 - .../repo/cmis/ws/CmisChoiceDateTime.java | 104 - .../repo/cmis/ws/CmisChoiceDecimal.java | 102 - .../alfresco/repo/cmis/ws/CmisChoiceHtml.java | 101 - .../alfresco/repo/cmis/ws/CmisChoiceId.java | 101 - .../repo/cmis/ws/CmisChoiceInteger.java | 102 - .../repo/cmis/ws/CmisChoiceString.java | 101 - .../alfresco/repo/cmis/ws/CmisChoiceUri.java | 103 - .../repo/cmis/ws/CmisContentStreamType.java | 210 - .../alfresco/repo/cmis/ws/CmisException.java | 45 - .../repo/cmis/ws/CmisExtensionType.java | 69 - .../alfresco/repo/cmis/ws/CmisFaultType.java | 155 - .../repo/cmis/ws/CmisListOfIdsType.java | 130 - .../ws/CmisObjectInFolderContainerType.java | 157 - .../cmis/ws/CmisObjectInFolderListType.java | 175 - .../repo/cmis/ws/CmisObjectInFolderType.java | 152 - .../repo/cmis/ws/CmisObjectListType.java | 175 - .../repo/cmis/ws/CmisObjectParentsType.java | 152 - .../alfresco/repo/cmis/ws/CmisObjectType.java | 322 - .../cmis/ws/CmisPermissionDefinition.java | 127 - .../repo/cmis/ws/CmisPermissionMapping.java | 133 - .../repo/cmis/ws/CmisPropertiesType.java | 156 - .../alfresco/repo/cmis/ws/CmisProperty.java | 180 - .../repo/cmis/ws/CmisPropertyBoolean.java | 107 - .../ws/CmisPropertyBooleanDefinitionType.java | 96 - .../repo/cmis/ws/CmisPropertyDateTime.java | 108 - .../CmisPropertyDateTimeDefinitionType.java | 123 - .../repo/cmis/ws/CmisPropertyDecimal.java | 106 - .../ws/CmisPropertyDecimalDefinitionType.java | 179 - .../cmis/ws/CmisPropertyDefinitionType.java | 469 - .../repo/cmis/ws/CmisPropertyHtml.java | 105 - .../ws/CmisPropertyHtmlDefinitionType.java | 96 - .../alfresco/repo/cmis/ws/CmisPropertyId.java | 105 - .../cmis/ws/CmisPropertyIdDefinitionType.java | 96 - .../repo/cmis/ws/CmisPropertyInteger.java | 106 - .../ws/CmisPropertyIntegerDefinitionType.java | 151 - .../repo/cmis/ws/CmisPropertyString.java | 105 - .../ws/CmisPropertyStringDefinitionType.java | 124 - .../repo/cmis/ws/CmisPropertyUri.java | 107 - .../ws/CmisPropertyUriDefinitionType.java | 96 - .../alfresco/repo/cmis/ws/CmisQueryType.java | 288 - .../repo/cmis/ws/CmisRenditionType.java | 293 - .../ws/CmisRepositoryCapabilitiesType.java | 416 - .../repo/cmis/ws/CmisRepositoryEntryType.java | 153 - .../repo/cmis/ws/CmisRepositoryInfoType.java | 545 - .../repo/cmis/ws/CmisTypeContainer.java | 157 - .../cmis/ws/CmisTypeDefinitionListType.java | 175 - .../repo/cmis/ws/CmisTypeDefinitionType.java | 519 - .../ws/CmisTypeDocumentDefinitionType.java | 83 - .../cmis/ws/CmisTypeFolderDefinitionType.java | 34 - .../cmis/ws/CmisTypePolicyDefinitionType.java | 34 - .../CmisTypeRelationshipDefinitionType.java | 101 - .../alfresco/repo/cmis/ws/CreateDocument.java | 297 - .../cmis/ws/CreateDocumentFromSource.java | 297 - .../ws/CreateDocumentFromSourceResponse.java | 94 - .../repo/cmis/ws/CreateDocumentResponse.java | 94 - .../alfresco/repo/cmis/ws/CreateFolder.java | 241 - .../repo/cmis/ws/CreateFolderResponse.java | 94 - .../alfresco/repo/cmis/ws/CreatePolicy.java | 241 - .../repo/cmis/ws/CreatePolicyResponse.java | 94 - .../repo/cmis/ws/CreateRelationship.java | 213 - .../cmis/ws/CreateRelationshipResponse.java | 94 - .../repo/cmis/ws/DeleteContentStream.java | 149 - .../cmis/ws/DeleteContentStreamResponse.java | 121 - .../alfresco/repo/cmis/ws/DeleteObject.java | 150 - .../repo/cmis/ws/DeleteObjectResponse.java | 65 - .../org/alfresco/repo/cmis/ws/DeleteTree.java | 206 - .../repo/cmis/ws/DeleteTreeResponse.java | 172 - .../repo/cmis/ws/DiscoveryService.java | 77 - .../repo/cmis/ws/DiscoveryServicePort.java | 56 - .../repo/cmis/ws/EnumACLPropagation.java | 54 - .../repo/cmis/ws/EnumAllowableActionsKey.java | 147 - .../repo/cmis/ws/EnumBaseObjectTypeIds.java | 57 - .../repo/cmis/ws/EnumBasicPermissions.java | 54 - .../repo/cmis/ws/EnumCapabilityACL.java | 54 - .../repo/cmis/ws/EnumCapabilityChanges.java | 57 - .../EnumCapabilityContentStreamUpdates.java | 54 - .../repo/cmis/ws/EnumCapabilityJoin.java | 54 - .../repo/cmis/ws/EnumCapabilityQuery.java | 60 - .../repo/cmis/ws/EnumCapabilityRendition.java | 51 - .../repo/cmis/ws/EnumCardinality.java | 51 - .../cmis/ws/EnumContentStreamAllowed.java | 54 - .../repo/cmis/ws/EnumDateTimeResolution.java | 54 - .../cmis/ws/EnumIncludeRelationships.java | 57 - .../repo/cmis/ws/EnumPropertiesBase.java | 72 - .../repo/cmis/ws/EnumPropertiesDocument.java | 87 - .../repo/cmis/ws/EnumPropertiesFolder.java | 54 - .../repo/cmis/ws/EnumPropertiesPolicy.java | 48 - .../cmis/ws/EnumPropertiesRelationship.java | 51 - .../repo/cmis/ws/EnumPropertyType.java | 69 - .../cmis/ws/EnumRelationshipDirection.java | 54 - .../repo/cmis/ws/EnumRenditionKind.java | 48 - .../repo/cmis/ws/EnumServiceException.java | 84 - .../cmis/ws/EnumSupportedPermissions.java | 54 - .../repo/cmis/ws/EnumTypeOfChanges.java | 57 - .../repo/cmis/ws/EnumUnfileObject.java | 54 - .../repo/cmis/ws/EnumUpdatability.java | 57 - .../org/alfresco/repo/cmis/ws/EnumUsers.java | 57 - .../repo/cmis/ws/EnumVersioningState.java | 57 - .../org/alfresco/repo/cmis/ws/GetACL.java | 150 - .../alfresco/repo/cmis/ws/GetACLResponse.java | 64 - .../alfresco/repo/cmis/ws/GetAllVersions.java | 178 - .../repo/cmis/ws/GetAllVersionsResponse.java | 69 - .../repo/cmis/ws/GetAllowableActions.java | 122 - .../cmis/ws/GetAllowableActionsResponse.java | 64 - .../repo/cmis/ws/GetAppliedPolicies.java | 150 - .../cmis/ws/GetAppliedPoliciesResponse.java | 69 - .../repo/cmis/ws/GetCheckedOutDocs.java | 319 - .../cmis/ws/GetCheckedOutDocsResponse.java | 64 - .../alfresco/repo/cmis/ws/GetChildren.java | 347 - .../repo/cmis/ws/GetChildrenResponse.java | 64 - .../repo/cmis/ws/GetContentChanges.java | 263 - .../cmis/ws/GetContentChangesResponse.java | 92 - .../repo/cmis/ws/GetContentStream.java | 207 - .../cmis/ws/GetContentStreamResponse.java | 64 - .../alfresco/repo/cmis/ws/GetDescendants.java | 291 - .../repo/cmis/ws/GetDescendantsResponse.java | 69 - .../repo/cmis/ws/GetFolderParent.java | 149 - .../repo/cmis/ws/GetFolderParentResponse.java | 64 - .../alfresco/repo/cmis/ws/GetFolderTree.java | 291 - .../repo/cmis/ws/GetFolderTreeResponse.java | 69 - .../org/alfresco/repo/cmis/ws/GetObject.java | 290 - .../repo/cmis/ws/GetObjectByPath.java | 290 - .../repo/cmis/ws/GetObjectByPathResponse.java | 64 - .../cmis/ws/GetObjectOfLatestVersion.java | 317 - .../ws/GetObjectOfLatestVersionResponse.java | 64 - .../repo/cmis/ws/GetObjectParents.java | 262 - .../cmis/ws/GetObjectParentsResponse.java | 69 - .../repo/cmis/ws/GetObjectRelationships.java | 318 - .../ws/GetObjectRelationshipsResponse.java | 64 - .../repo/cmis/ws/GetObjectResponse.java | 64 - .../alfresco/repo/cmis/ws/GetProperties.java | 150 - .../cmis/ws/GetPropertiesOfLatestVersion.java | 177 - .../GetPropertiesOfLatestVersionResponse.java | 64 - .../repo/cmis/ws/GetPropertiesResponse.java | 64 - .../alfresco/repo/cmis/ws/GetRenditions.java | 207 - .../repo/cmis/ws/GetRenditionsResponse.java | 69 - .../repo/cmis/ws/GetRepositories.java | 65 - .../repo/cmis/ws/GetRepositoriesResponse.java | 71 - .../repo/cmis/ws/GetRepositoryInfo.java | 94 - .../cmis/ws/GetRepositoryInfoResponse.java | 64 - .../repo/cmis/ws/GetTypeChildren.java | 207 - .../repo/cmis/ws/GetTypeChildrenResponse.java | 64 - .../repo/cmis/ws/GetTypeDefinition.java | 122 - .../cmis/ws/GetTypeDefinitionResponse.java | 62 - .../repo/cmis/ws/GetTypeDescendants.java | 179 - .../cmis/ws/GetTypeDescendantsResponse.java | 69 - .../org/alfresco/repo/cmis/ws/MoveObject.java | 178 - .../repo/cmis/ws/MoveObjectResponse.java | 94 - .../repo/cmis/ws/MultiFilingService.java | 77 - .../repo/cmis/ws/MultiFilingServicePort.java | 51 - .../repo/cmis/ws/NavigationService.java | 77 - .../repo/cmis/ws/NavigationServicePort.java | 165 - .../alfresco/repo/cmis/ws/ObjectFactory.java | 2933 ----- .../alfresco/repo/cmis/ws/ObjectService.java | 77 - .../repo/cmis/ws/ObjectServicePort.java | 351 - .../alfresco/repo/cmis/ws/PolicyService.java | 77 - .../repo/cmis/ws/PolicyServicePort.java | 65 - .../org/alfresco/repo/cmis/ws/Query.java | 316 - .../alfresco/repo/cmis/ws/QueryResponse.java | 64 - .../repo/cmis/ws/RelationshipService.java | 77 - .../repo/cmis/ws/RelationshipServicePort.java | 48 - .../repo/cmis/ws/RemoveObjectFromFolder.java | 150 - .../ws/RemoveObjectFromFolderResponse.java | 65 - .../alfresco/repo/cmis/ws/RemovePolicy.java | 150 - .../repo/cmis/ws/RemovePolicyResponse.java | 65 - .../repo/cmis/ws/RepositoryService.java | 77 - .../repo/cmis/ws/RepositoryServicePort.java | 90 - .../org/alfresco/repo/cmis/ws/SetAspects.java | 132 - .../repo/cmis/ws/SetContentStream.java | 206 - .../cmis/ws/SetContentStreamResponse.java | 121 - .../repo/cmis/ws/UpdateProperties.java | 178 - .../cmis/ws/UpdatePropertiesResponse.java | 121 - .../repo/cmis/ws/VersioningService.java | 77 - .../repo/cmis/ws/VersioningServicePort.java | 135 - .../alfresco/repo/cmis/ws/package-info.java | 2 - .../repo/webservice/accesscontrol/ACE.java | 191 - .../repo/webservice/accesscontrol/ACL.java | 205 - .../accesscontrol/AccessControlFault.java | 158 - .../AccessControlServiceSoapPort.java | 97 - .../accesscontrol/AccessStatus.java | 70 - .../accesscontrol/AuthorityFilter.java | 151 - .../GetClassPermissionsResult.java | 173 - .../accesscontrol/GetPermissionsResult.java | 173 - .../accesscontrol/HasPermissionsResult.java | 191 - .../accesscontrol/NewAuthority.java | 155 - .../webservice/accesscontrol/OwnerResult.java | 155 - .../accesscontrol/SiblingAuthorityFilter.java | 151 - .../repo/webservice/accesscontrol/deploy.wsdd | 416 - .../repo/webservice/action/Action.java | 461 - .../action/ActionExecutionResult.java | 173 - .../repo/webservice/action/ActionFault.java | 158 - .../repo/webservice/action/ActionFilter.java | 191 - .../action/ActionItemDefinition.java | 313 - .../action/ActionItemDefinitionType.java | 70 - .../action/ActionServiceSoapPort.java | 71 - .../repo/webservice/action/Condition.java | 241 - .../action/ParameterDefinition.java | 223 - .../alfresco/repo/webservice/action/Rule.java | 348 - .../repo/webservice/action/RuleFilter.java | 223 - .../repo/webservice/action/RuleType.java | 155 - .../repo/webservice/action/deploy.wsdd | 391 - .../administration/AdministrationFault.java | 158 - .../AdministrationServiceSoapPort.java | 46 - .../administration/NewUserDetails.java | 209 - .../administration/UserDetails.java | 173 - .../webservice/administration/UserFilter.java | 119 - .../administration/UserQueryResults.java | 173 - .../webservice/administration/deploy.wsdd | 320 - .../authentication/AuthenticationFault.java | 158 - .../authentication/AuthenticationResult.java | 191 - .../AuthenticationServiceSoapPort.java | 13 - .../webservice/authentication/deploy.wsdd | 51 - .../webservice/authoring/AuthoringFault.java | 158 - .../authoring/AuthoringServiceSoapPort.java | 67 - .../authoring/CancelCheckoutResult.java | 191 - .../webservice/authoring/CheckinResult.java | 191 - .../webservice/authoring/CheckoutResult.java | 191 - .../repo/webservice/authoring/LockStatus.java | 193 - .../webservice/authoring/LockTypeEnum.java | 70 - .../webservice/authoring/VersionResult.java | 191 - .../repo/webservice/authoring/deploy.wsdd | 363 - .../classification/AppliedCategory.java | 173 - .../classification/CategoriesResult.java | 173 - .../classification/ClassificationFault.java | 158 - .../ClassificationServiceSoapPort.java | 38 - .../webservice/classification/deploy.wsdd | 295 - .../repo/webservice/content/Content.java | 259 - .../repo/webservice/content/ContentFault.java | 158 - .../webservice/content/ContentSegment.java | 147 - .../content/ContentServiceSoapPort.java | 36 - .../repo/webservice/content/deploy.wsdd | 305 - .../webservice/dictionary/ClassPredicate.java | 201 - .../dictionary/DictionaryFault.java | 158 - .../dictionary/DictionaryServiceSoapPort.java | 32 - .../repo/webservice/dictionary/deploy.wsdd | 284 - .../webservice/repository/Association.java | 155 - .../webservice/repository/QueryResult.java | 155 - .../repository/RepositoryFault.java | 158 - .../repository/RepositoryServiceSoapPort.java | 64 - .../webservice/repository/UpdateResult.java | 263 - .../repo/webservice/repository/deploy.wsdd | 460 - .../types/AssociationDefinition.java | 335 - .../alfresco/repo/webservice/types/CML.java | 731 -- .../repo/webservice/types/CMLAddAspect.java | 247 - .../repo/webservice/types/CMLAddChild.java | 305 - .../repo/webservice/types/CMLCopy.java | 342 - .../repo/webservice/types/CMLCreate.java | 359 - .../types/CMLCreateAssociation.java | 267 - .../repo/webservice/types/CMLDelete.java | 119 - .../repo/webservice/types/CMLMove.java | 305 - .../webservice/types/CMLRemoveAspect.java | 193 - .../types/CMLRemoveAssociation.java | 267 - .../repo/webservice/types/CMLRemoveChild.java | 231 - .../repo/webservice/types/CMLUpdate.java | 210 - .../webservice/types/CMLWriteContent.java | 273 - .../repo/webservice/types/Cardinality.java | 74 - .../repo/webservice/types/Category.java | 193 - .../webservice/types/ClassDefinition.java | 370 - .../repo/webservice/types/Classification.java | 229 - .../repo/webservice/types/ContentFormat.java | 164 - .../webservice/types/LocaleConfiguration.java | 120 - .../repo/webservice/types/NamedValue.java | 245 - .../types/NamespaceConfigurationInner.java | 155 - .../alfresco/repo/webservice/types/Node.java | 263 - .../repo/webservice/types/NodeDefinition.java | 173 - .../webservice/types/ParentReference.java | 164 - .../repo/webservice/types/Predicate.java | 211 - .../webservice/types/PropertyDefinition.java | 193 - .../alfresco/repo/webservice/types/Query.java | 155 - .../webservice/types/QueryConfiguration.java | 115 - .../repo/webservice/types/Reference.java | 194 - .../repo/webservice/types/ResultSet.java | 206 - .../webservice/types/ResultSetMetaData.java | 191 - .../repo/webservice/types/ResultSetRow.java | 243 - .../webservice/types/ResultSetRowNode.java | 209 - .../repo/webservice/types/RoleDefinition.java | 157 - .../alfresco/repo/webservice/types/Store.java | 157 - .../webservice/types/ValueDefinition.java | 229 - .../repo/webservice/types/Version.java | 316 - .../repo/webservice/types/VersionHistory.java | 173 - .../repo/webservice/AbstractQuery.java | 81 - .../repo/webservice/AbstractQuerySession.java | 182 - .../repo/webservice/AbstractWebService.java | 111 - .../org/alfresco/repo/webservice/CMLUtil.java | 714 -- .../repo/webservice/QuerySession.java | 61 - .../alfresco/repo/webservice/ServerQuery.java | 63 - .../org/alfresco/repo/webservice/Utils.java | 866 -- .../AccessControlWebService.java | 795 -- .../webservice/action/ActionWebService.java | 1164 -- .../AdministrationWebService.java | 600 - .../webservice/administration/UserQuery.java | 108 - .../administration/UserQuerySession.java | 59 - .../AuthenticationWebService.java | 140 - .../authoring/AuthoringWebService.java | 810 -- .../webservice/axis/QueryConfigHandler.java | 99 - .../axis/SpringBeanRPCProvider.java | 120 - .../axis/TicketCallbackHandler.java | 102 - .../axis/TicketCallbackSpringHandler.java | 65 - .../axis/WSDDSpringBeanRPCProvider.java | 57 - .../ClassificationWebService.java | 459 - .../webservice/content/ContentWebService.java | 420 - .../dictionary/DictionaryWebService.java | 306 - .../repository/AssociationQuery.java | 185 - .../repository/ChildAssociationQuery.java | 140 - .../repository/ParentAssociationQuery.java | 140 - .../repository/RepositoryQuerySession.java | 70 - .../repository/RepositoryWebService.java | 479 - .../webservice/repository/SearchQuery.java | 172 - .../ws/AuthenticationClearInterceptor.java | 48 - .../repo/ws/AuthenticationInterceptor.java | 92 - .../AuthenticationTokenCallbackHandler.java | 49 - .../repo/ws/ContentReaderDataSource.java | 190 - .../repo/ws/PasswordTypeInterceptor.java | 62 - source/sample/JavaCmisTest/.classpath | 37 - source/sample/JavaCmisTest/.project | 19 - source/sample/JavaCmisTest/build.xml | 37 - source/sample/JavaCmisTest/cmis-test.bat | 6 - source/sample/JavaCmisTest/cmis-test.sh | 6 - .../JavaCmisTest/lib/FastInfoset-1.2.2.jar | Bin 291779 -> 0 bytes .../JavaCmisTest/lib/XmlSchema-1.4.2.jar | Bin 139721 -> 0 bytes source/sample/JavaCmisTest/lib/cmis-types.jar | Bin 229044 -> 0 bytes .../lib/commons-logging-1.1.1.jar | Bin 60686 -> 0 bytes source/sample/JavaCmisTest/lib/cxf-2.1.2.jar | Bin 4017042 -> 0 bytes .../geronimo-annotation_1.0_spec-1.1.1.jar | Bin 12452 -> 0 bytes .../lib/geronimo-javamail_1.4_spec-1.3.jar | Bin 202974 -> 0 bytes .../lib/geronimo-jaxws_2.1_spec-1.0.jar | Bin 47817 -> 0 bytes .../lib/geronimo-servlet_2.5_spec-1.2.jar | Bin 70593 -> 0 bytes .../lib/geronimo-stax-api_1.0_spec-1.0.1.jar | Bin 28804 -> 0 bytes .../geronimo-ws-metadata_2.0_spec-1.1.2.jar | Bin 14611 -> 0 bytes .../sample/JavaCmisTest/lib/jaxb-api-2.1.jar | Bin 104002 -> 0 bytes .../JavaCmisTest/lib/jaxb-impl-2.1.7.jar | Bin 854901 -> 0 bytes .../JavaCmisTest/lib/jaxb-xjc-2.1.7.jar | Bin 3126580 -> 0 bytes .../sample/JavaCmisTest/lib/jetty-6.1.9.jar | Bin 498315 -> 0 bytes .../JavaCmisTest/lib/jetty-util-6.1.9.jar | Bin 160298 -> 0 bytes .../sample/JavaCmisTest/lib/neethi-2.0.4.jar | Bin 32900 -> 0 bytes .../JavaCmisTest/lib/opensaml-1.0.1.jar | Bin 105026 -> 0 bytes .../sample/JavaCmisTest/lib/saaj-api-1.3.jar | Bin 18817 -> 0 bytes .../sample/JavaCmisTest/lib/saaj-impl-1.3.jar | Bin 274208 -> 0 bytes .../JavaCmisTest/lib/spring-beans-2.0.8.jar | Bin 390391 -> 0 bytes .../JavaCmisTest/lib/spring-context-2.0.8.jar | Bin 160674 -> 0 bytes .../JavaCmisTest/lib/spring-core-2.0.8.jar | Bin 182184 -> 0 bytes .../JavaCmisTest/lib/spring-web-2.0.8.jar | Bin 152266 -> 0 bytes .../JavaCmisTest/lib/stax-utils-20060502.jar | Bin 128475 -> 0 bytes .../sample/JavaCmisTest/lib/velocity-1.4.jar | Bin 361173 -> 0 bytes .../JavaCmisTest/lib/velocity-dep-1.4.jar | Bin 517761 -> 0 bytes .../sample/JavaCmisTest/lib/wsdl4j-1.6.2.jar | Bin 148429 -> 0 bytes .../sample/JavaCmisTest/lib/wss4j-1.5.4.jar | Bin 307437 -> 0 bytes .../JavaCmisTest/lib/wstx-asl-3.2.4.jar | Bin 520092 -> 0 bytes .../JavaCmisTest/lib/xml-resolver-1.2.jar | Bin 84091 -> 0 bytes .../sample/JavaCmisTest/lib/xmlsec-1.3.0.jar | Bin 284773 -> 0 bytes source/sample/JavaCmisTest/readme.txt | 22 - .../cmis/ws/example/CmisSampleClient.java | 138 - .../alfresco/cmis/ws/example/CmisUtils.java | 213 - source/sample/WcfCmisTest/CmisTest.exe | Bin 118272 -> 0 bytes source/sample/WcfCmisTest/CmisTest.exe.config | 35 - source/sample/WcfCmisTest/src/CmisTest.csproj | 165 - source/sample/WcfCmisTest/src/CmisTest.sln | 20 - source/sample/WcfCmisTest/src/Program.cs | 155 - .../src/Properties/AssemblyInfo.cs | 35 - .../CmisServices/Reference.cs | 10219 ---------------- source/sample/WcfCmisTest/src/app.config | 35 - .../subsystems/test/SubsystemsTest.java | 13 - .../alfresco/repo/webservice/CMLUtilTest.java | 483 - .../org/alfresco/repo/webservice/cml-test.xml | 9 - source/wsdl/access-control-service.wsdl | 860 -- source/wsdl/action-service.wsdl | 655 - source/wsdl/administration-service.wsdl | 383 - source/wsdl/authentication-service.wsdl | 134 - source/wsdl/authoring-service.wsdl | 589 - source/wsdl/classification-service.wsdl | 280 - source/wsdl/content-service.wsdl | 292 - source/wsdl/dictionary-service.wsdl | 229 - source/wsdl/repository-service.wsdl | 520 - 403 files changed, 24 insertions(+), 75719 deletions(-) delete mode 100644 config/META-INF/cxf/org.apache.cxf.Logger delete mode 100644 config/META-INF/services/org.apache.axis.deployment.wsdd.Provider delete mode 100644 config/alfresco/cxf/cxf.xml delete mode 100644 config/alfresco/web-services-application-context.xml delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ACLService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ACLServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolder.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolderResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ApplyACL.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ApplyACLResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ApplyPolicy.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ApplyPolicyResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/Aspects.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CancelCheckOut.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CancelCheckOutResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CheckIn.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CheckInResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CheckOut.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CheckOutResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisACLCapabilityType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisACLType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlEntryType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlListType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlPrincipalType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisAllowableActionsType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChangeEventType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoice.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceBoolean.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDateTime.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDecimal.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceHtml.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceId.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceInteger.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceString.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisChoiceUri.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisContentStreamType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisException.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisExtensionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisFaultType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisListOfIdsType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderContainerType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderListType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectListType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectParentsType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisObjectType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPermissionDefinition.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPermissionMapping.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertiesType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisProperty.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBoolean.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBooleanDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTime.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTimeDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimal.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimalDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtml.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtmlDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyId.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIdDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyInteger.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIntegerDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyString.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyStringDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUri.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUriDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisQueryType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisRenditionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryCapabilitiesType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryEntryType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryInfoType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeContainer.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionListType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeDocumentDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeFolderDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypePolicyDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CmisTypeRelationshipDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateDocument.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSource.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSourceResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateDocumentResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateFolder.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateFolderResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreatePolicy.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreatePolicyResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateRelationship.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/CreateRelationshipResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteContentStream.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteContentStreamResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteObject.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteObjectResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteTree.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DeleteTreeResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DiscoveryService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/DiscoveryServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumACLPropagation.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumAllowableActionsKey.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumBaseObjectTypeIds.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumBasicPermissions.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityACL.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityChanges.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityContentStreamUpdates.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityJoin.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityQuery.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityRendition.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumCardinality.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumContentStreamAllowed.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumDateTimeResolution.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumIncludeRelationships.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesBase.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesDocument.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesFolder.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesPolicy.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesRelationship.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumPropertyType.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumRelationshipDirection.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumRenditionKind.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumServiceException.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumSupportedPermissions.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumTypeOfChanges.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumUnfileObject.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumUpdatability.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumUsers.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/EnumVersioningState.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetACL.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetACLResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAllVersions.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAllVersionsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAllowableActions.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAllowableActionsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAppliedPolicies.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetAppliedPoliciesResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocs.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetChildren.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetChildrenResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetContentChanges.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetContentChangesResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetContentStream.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetContentStreamResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetDescendants.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetDescendantsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetFolderParent.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetFolderParentResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetFolderTree.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetFolderTreeResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObject.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectByPath.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectByPathResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersion.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersionResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectParents.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectParentsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationships.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationshipsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetObjectResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetProperties.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersion.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersionResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetPropertiesResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRenditions.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRenditionsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRepositories.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRepositoriesResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfo.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfoResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeChildren.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeChildrenResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinition.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinitionResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendants.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendantsResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/MoveObject.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/MoveObjectResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/MultiFilingService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/MultiFilingServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/NavigationService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/NavigationServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ObjectFactory.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ObjectService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/ObjectServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/PolicyService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/PolicyServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/Query.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/QueryResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RelationshipService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RelationshipServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolder.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolderResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RemovePolicy.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RemovePolicyResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RepositoryService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/RepositoryServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/SetAspects.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/SetContentStream.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/SetContentStreamResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/UpdateProperties.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/UpdatePropertiesResponse.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/VersioningService.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/VersioningServicePort.java delete mode 100644 source/generated/org/alfresco/repo/cmis/ws/package-info.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/ACE.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/ACL.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/AccessControlFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/AccessControlServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/AccessStatus.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/AuthorityFilter.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/GetClassPermissionsResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/GetPermissionsResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/HasPermissionsResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/NewAuthority.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/OwnerResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/SiblingAuthorityFilter.java delete mode 100644 source/generated/org/alfresco/repo/webservice/accesscontrol/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/action/Action.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionExecutionResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionFilter.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionItemDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionItemDefinitionType.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ActionServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/Condition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/ParameterDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/Rule.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/RuleFilter.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/RuleType.java delete mode 100644 source/generated/org/alfresco/repo/webservice/action/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/AdministrationFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/AdministrationServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/NewUserDetails.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/UserDetails.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/UserFilter.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/UserQueryResults.java delete mode 100644 source/generated/org/alfresco/repo/webservice/administration/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/authentication/AuthenticationFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authentication/AuthenticationResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authentication/AuthenticationServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authentication/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/AuthoringFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/AuthoringServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/CancelCheckoutResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/CheckinResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/CheckoutResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/LockStatus.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/LockTypeEnum.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/VersionResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/authoring/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/classification/AppliedCategory.java delete mode 100644 source/generated/org/alfresco/repo/webservice/classification/CategoriesResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/classification/ClassificationFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/classification/ClassificationServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/classification/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/content/Content.java delete mode 100644 source/generated/org/alfresco/repo/webservice/content/ContentFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/content/ContentSegment.java delete mode 100644 source/generated/org/alfresco/repo/webservice/content/ContentServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/content/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/dictionary/ClassPredicate.java delete mode 100644 source/generated/org/alfresco/repo/webservice/dictionary/DictionaryFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/dictionary/DictionaryServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/dictionary/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/Association.java delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/QueryResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/RepositoryFault.java delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/RepositoryServiceSoapPort.java delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/UpdateResult.java delete mode 100644 source/generated/org/alfresco/repo/webservice/repository/deploy.wsdd delete mode 100644 source/generated/org/alfresco/repo/webservice/types/AssociationDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CML.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLAddAspect.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLAddChild.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLCopy.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLCreate.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLCreateAssociation.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLDelete.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLMove.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLRemoveAspect.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLRemoveAssociation.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLRemoveChild.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLUpdate.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/CMLWriteContent.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Cardinality.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Category.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ClassDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Classification.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ContentFormat.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/LocaleConfiguration.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/NamedValue.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/NamespaceConfigurationInner.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Node.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/NodeDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ParentReference.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Predicate.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/PropertyDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Query.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/QueryConfiguration.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Reference.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ResultSet.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ResultSetMetaData.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ResultSetRow.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ResultSetRowNode.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/RoleDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Store.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/ValueDefinition.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/Version.java delete mode 100644 source/generated/org/alfresco/repo/webservice/types/VersionHistory.java delete mode 100644 source/java/org/alfresco/repo/webservice/AbstractQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/AbstractQuerySession.java delete mode 100644 source/java/org/alfresco/repo/webservice/AbstractWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/CMLUtil.java delete mode 100644 source/java/org/alfresco/repo/webservice/QuerySession.java delete mode 100644 source/java/org/alfresco/repo/webservice/ServerQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/Utils.java delete mode 100644 source/java/org/alfresco/repo/webservice/accesscontrol/AccessControlWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/action/ActionWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/administration/AdministrationWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/administration/UserQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/administration/UserQuerySession.java delete mode 100644 source/java/org/alfresco/repo/webservice/authentication/AuthenticationWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/authoring/AuthoringWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/axis/QueryConfigHandler.java delete mode 100644 source/java/org/alfresco/repo/webservice/axis/SpringBeanRPCProvider.java delete mode 100644 source/java/org/alfresco/repo/webservice/axis/TicketCallbackHandler.java delete mode 100644 source/java/org/alfresco/repo/webservice/axis/TicketCallbackSpringHandler.java delete mode 100644 source/java/org/alfresco/repo/webservice/axis/WSDDSpringBeanRPCProvider.java delete mode 100644 source/java/org/alfresco/repo/webservice/classification/ClassificationWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/content/ContentWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/dictionary/DictionaryWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/AssociationQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/ChildAssociationQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/ParentAssociationQuery.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/RepositoryQuerySession.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/RepositoryWebService.java delete mode 100644 source/java/org/alfresco/repo/webservice/repository/SearchQuery.java delete mode 100644 source/java/org/alfresco/repo/ws/AuthenticationClearInterceptor.java delete mode 100644 source/java/org/alfresco/repo/ws/AuthenticationInterceptor.java delete mode 100644 source/java/org/alfresco/repo/ws/AuthenticationTokenCallbackHandler.java delete mode 100644 source/java/org/alfresco/repo/ws/ContentReaderDataSource.java delete mode 100644 source/java/org/alfresco/repo/ws/PasswordTypeInterceptor.java delete mode 100644 source/sample/JavaCmisTest/.classpath delete mode 100644 source/sample/JavaCmisTest/.project delete mode 100644 source/sample/JavaCmisTest/build.xml delete mode 100644 source/sample/JavaCmisTest/cmis-test.bat delete mode 100644 source/sample/JavaCmisTest/cmis-test.sh delete mode 100644 source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/cmis-types.jar delete mode 100644 source/sample/JavaCmisTest/lib/commons-logging-1.1.1.jar delete mode 100644 source/sample/JavaCmisTest/lib/cxf-2.1.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-annotation_1.0_spec-1.1.1.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-javamail_1.4_spec-1.3.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-jaxws_2.1_spec-1.0.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-servlet_2.5_spec-1.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-stax-api_1.0_spec-1.0.1.jar delete mode 100644 source/sample/JavaCmisTest/lib/geronimo-ws-metadata_2.0_spec-1.1.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/jaxb-api-2.1.jar delete mode 100644 source/sample/JavaCmisTest/lib/jaxb-impl-2.1.7.jar delete mode 100644 source/sample/JavaCmisTest/lib/jaxb-xjc-2.1.7.jar delete mode 100644 source/sample/JavaCmisTest/lib/jetty-6.1.9.jar delete mode 100644 source/sample/JavaCmisTest/lib/jetty-util-6.1.9.jar delete mode 100644 source/sample/JavaCmisTest/lib/neethi-2.0.4.jar delete mode 100644 source/sample/JavaCmisTest/lib/opensaml-1.0.1.jar delete mode 100644 source/sample/JavaCmisTest/lib/saaj-api-1.3.jar delete mode 100644 source/sample/JavaCmisTest/lib/saaj-impl-1.3.jar delete mode 100644 source/sample/JavaCmisTest/lib/spring-beans-2.0.8.jar delete mode 100644 source/sample/JavaCmisTest/lib/spring-context-2.0.8.jar delete mode 100644 source/sample/JavaCmisTest/lib/spring-core-2.0.8.jar delete mode 100644 source/sample/JavaCmisTest/lib/spring-web-2.0.8.jar delete mode 100644 source/sample/JavaCmisTest/lib/stax-utils-20060502.jar delete mode 100644 source/sample/JavaCmisTest/lib/velocity-1.4.jar delete mode 100644 source/sample/JavaCmisTest/lib/velocity-dep-1.4.jar delete mode 100644 source/sample/JavaCmisTest/lib/wsdl4j-1.6.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/wss4j-1.5.4.jar delete mode 100644 source/sample/JavaCmisTest/lib/wstx-asl-3.2.4.jar delete mode 100644 source/sample/JavaCmisTest/lib/xml-resolver-1.2.jar delete mode 100644 source/sample/JavaCmisTest/lib/xmlsec-1.3.0.jar delete mode 100644 source/sample/JavaCmisTest/readme.txt delete mode 100644 source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/CmisSampleClient.java delete mode 100644 source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/CmisUtils.java delete mode 100644 source/sample/WcfCmisTest/CmisTest.exe delete mode 100644 source/sample/WcfCmisTest/CmisTest.exe.config delete mode 100644 source/sample/WcfCmisTest/src/CmisTest.csproj delete mode 100644 source/sample/WcfCmisTest/src/CmisTest.sln delete mode 100644 source/sample/WcfCmisTest/src/Program.cs delete mode 100644 source/sample/WcfCmisTest/src/Properties/AssemblyInfo.cs delete mode 100644 source/sample/WcfCmisTest/src/Service References/CmisServices/Reference.cs delete mode 100644 source/sample/WcfCmisTest/src/app.config delete mode 100644 source/test-java/org/alfresco/repo/webservice/CMLUtilTest.java delete mode 100644 source/test-resources/org/alfresco/repo/webservice/cml-test.xml delete mode 100644 source/wsdl/access-control-service.wsdl delete mode 100644 source/wsdl/action-service.wsdl delete mode 100644 source/wsdl/administration-service.wsdl delete mode 100644 source/wsdl/authentication-service.wsdl delete mode 100644 source/wsdl/authoring-service.wsdl delete mode 100644 source/wsdl/classification-service.wsdl delete mode 100644 source/wsdl/content-service.wsdl delete mode 100644 source/wsdl/dictionary-service.wsdl delete mode 100644 source/wsdl/repository-service.wsdl diff --git a/.classpath b/.classpath index fa1f87d66e..dfb5eab78f 100644 --- a/.classpath +++ b/.classpath @@ -1,23 +1,24 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/config/META-INF/cxf/org.apache.cxf.Logger b/config/META-INF/cxf/org.apache.cxf.Logger deleted file mode 100644 index be0c538174..0000000000 --- a/config/META-INF/cxf/org.apache.cxf.Logger +++ /dev/null @@ -1 +0,0 @@ -org.apache.cxf.common.logging.Log4jLogger \ No newline at end of file diff --git a/config/META-INF/services/org.apache.axis.deployment.wsdd.Provider b/config/META-INF/services/org.apache.axis.deployment.wsdd.Provider deleted file mode 100644 index 9078ba3858..0000000000 --- a/config/META-INF/services/org.apache.axis.deployment.wsdd.Provider +++ /dev/null @@ -1 +0,0 @@ -org.alfresco.repo.webservice.axis.WSDDSpringBeanRPCProvider \ No newline at end of file diff --git a/config/alfresco/cxf/cxf.xml b/config/alfresco/cxf/cxf.xml deleted file mode 100644 index 182b0f6d18..0000000000 --- a/config/alfresco/cxf/cxf.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/config/alfresco/web-services-application-context.xml b/config/alfresco/web-services-application-context.xml deleted file mode 100644 index 9d2bb84ec6..0000000000 --- a/config/alfresco/web-services-application-context.xml +++ /dev/null @@ -1,314 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - passwordCallbackRef - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/pom.xml b/pom.xml index 59f0d0ab64..55cecf70a3 100644 --- a/pom.xml +++ b/pom.xml @@ -293,89 +293,6 @@ - diff --git a/source/generated/org/alfresco/repo/cmis/ws/ACLService.java b/source/generated/org/alfresco/repo/cmis/ws/ACLService.java deleted file mode 100644 index 775a7c1ba0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ACLService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "ACLService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class ACLService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "ACLService"); - public final static QName ACLServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "ACLServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public ACLService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public ACLService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public ACLService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns ACLServicePort - */ - @WebEndpoint(name = "ACLServicePort") - public ACLServicePort getACLServicePort() { - return super.getPort(ACLServicePort, ACLServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns ACLServicePort - */ - @WebEndpoint(name = "ACLServicePort") - public ACLServicePort getACLServicePort(WebServiceFeature... features) { - return super.getPort(ACLServicePort, ACLServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ACLServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/ACLServicePort.java deleted file mode 100644 index 96306c0173..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ACLServicePort.java +++ /dev/null @@ -1,55 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "ACLServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface ACLServicePort { - - @WebResult(name = "ACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetACL") - @ResponseWrapper(localName = "getACLResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetACLResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisACLType getACL( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "onlyBasicPermissions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean onlyBasicPermissions, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "ACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "applyACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.ApplyACL") - @ResponseWrapper(localName = "applyACLResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.ApplyACLResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisACLType applyACL( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(name = "ACLPropagation", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumACLPropagation aclPropagation, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolder.java b/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolder.java deleted file mode 100644 index 14598f3e39..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolder.java +++ /dev/null @@ -1,177 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="allVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "folderId", - "allVersions", - "extension" -}) -@XmlRootElement(name = "addObjectToFolder") -public class AddObjectToFolder { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElement(required = true) - protected String folderId; - protected Boolean allVersions; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the allVersions property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isAllVersions() { - return allVersions; - } - - /** - * Sets the value of the allVersions property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setAllVersions(Boolean value) { - this.allVersions = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolderResponse.java b/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolderResponse.java deleted file mode 100644 index 9f8284e225..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/AddObjectToFolderResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "addObjectToFolderResponse") -public class AddObjectToFolderResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ApplyACL.java b/source/generated/org/alfresco/repo/cmis/ws/ApplyACL.java deleted file mode 100644 index f5b01e2d14..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ApplyACL.java +++ /dev/null @@ -1,204 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="ACLPropagation" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumACLPropagation" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "addACEs", - "removeACEs", - "aclPropagation", - "extension" -}) -@XmlRootElement(name = "applyACL") -public class ApplyACL { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - protected CmisAccessControlListType addACEs; - protected CmisAccessControlListType removeACEs; - @XmlElementRef(name = "ACLPropagation", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement aclPropagation; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link CmisAccessControlListType } - * - */ - public CmisAccessControlListType getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link CmisAccessControlListType } - * - */ - public void setAddACEs(CmisAccessControlListType value) { - this.addACEs = value; - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link CmisAccessControlListType } - * - */ - public CmisAccessControlListType getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link CmisAccessControlListType } - * - */ - public void setRemoveACEs(CmisAccessControlListType value) { - this.removeACEs = value; - } - - /** - * Gets the value of the aclPropagation property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumACLPropagation }{@code >} - * - */ - public JAXBElement getACLPropagation() { - return aclPropagation; - } - - /** - * Sets the value of the aclPropagation property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumACLPropagation }{@code >} - * - */ - public void setACLPropagation(JAXBElement value) { - this.aclPropagation = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ApplyACLResponse.java b/source/generated/org/alfresco/repo/cmis/ws/ApplyACLResponse.java deleted file mode 100644 index 980fb5e4e3..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ApplyACLResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="ACL" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisACLType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "acl" -}) -@XmlRootElement(name = "applyACLResponse") -public class ApplyACLResponse { - - @XmlElement(name = "ACL", required = true) - protected CmisACLType acl; - - /** - * Gets the value of the acl property. - * - * @return - * possible object is - * {@link CmisACLType } - * - */ - public CmisACLType getACL() { - return acl; - } - - /** - * Sets the value of the acl property. - * - * @param value - * allowed object is - * {@link CmisACLType } - * - */ - public void setACL(CmisACLType value) { - this.acl = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicy.java b/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicy.java deleted file mode 100644 index 7751a54c23..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicy.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="policyId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "policyId", - "objectId", - "extension" -}) -@XmlRootElement(name = "applyPolicy") -public class ApplyPolicy { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String policyId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the policyId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPolicyId() { - return policyId; - } - - /** - * Sets the value of the policyId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPolicyId(String value) { - this.policyId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicyResponse.java b/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicyResponse.java deleted file mode 100644 index cd2fd144d2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ApplyPolicyResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "applyPolicyResponse") -public class ApplyPolicyResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/Aspects.java b/source/generated/org/alfresco/repo/cmis/ws/Aspects.java deleted file mode 100644 index 1a85c2b1d1..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/Aspects.java +++ /dev/null @@ -1,99 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="appliedAspects" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "appliedAspects", - "properties" -}) -@XmlRootElement(name = "aspects", namespace = "http://www.alfresco.org") -public class Aspects { - - @XmlElement(namespace = "http://www.alfresco.org") - protected List appliedAspects; - @XmlElement(namespace = "http://www.alfresco.org") - protected CmisPropertiesType properties; - - /** - * Gets the value of the appliedAspects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the appliedAspects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAppliedAspects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getAppliedAspects() { - if (appliedAspects == null) { - appliedAspects = new ArrayList(); - } - return this.appliedAspects; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOut.java b/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOut.java deleted file mode 100644 index 3a041769a6..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOut.java +++ /dev/null @@ -1,122 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "extension" -}) -@XmlRootElement(name = "cancelCheckOut") -public class CancelCheckOut { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOutResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOutResponse.java deleted file mode 100644 index f917492022..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CancelCheckOutResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "cancelCheckOutResponse") -public class CancelCheckOutResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CheckIn.java b/source/generated/org/alfresco/repo/cmis/ws/CheckIn.java deleted file mode 100644 index 60d1bdd1bd..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CheckIn.java +++ /dev/null @@ -1,325 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="major" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType" minOccurs="0"/>
- *         <element name="contentStream" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisContentStreamType" minOccurs="0"/>
- *         <element name="checkinComment" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "major", - "properties", - "contentStream", - "checkinComment", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "checkIn") -public class CheckIn { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "major", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement major; - @XmlElementRef(name = "properties", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement properties; - @XmlElementRef(name = "contentStream", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement contentStream; - @XmlElementRef(name = "checkinComment", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement checkinComment; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the major property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getMajor() { - return major; - } - - /** - * Sets the value of the major property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setMajor(JAXBElement value) { - this.major = ((JAXBElement ) value); - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisPropertiesType }{@code >} - * - */ - public JAXBElement getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisPropertiesType }{@code >} - * - */ - public void setProperties(JAXBElement value) { - this.properties = ((JAXBElement ) value); - } - - /** - * Gets the value of the contentStream property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >} - * - */ - public JAXBElement getContentStream() { - return contentStream; - } - - /** - * Sets the value of the contentStream property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >} - * - */ - public void setContentStream(JAXBElement value) { - this.contentStream = ((JAXBElement ) value); - } - - /** - * Gets the value of the checkinComment property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getCheckinComment() { - return checkinComment; - } - - /** - * Sets the value of the checkinComment property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setCheckinComment(JAXBElement value) { - this.checkinComment = ((JAXBElement ) value); - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CheckInResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CheckInResponse.java deleted file mode 100644 index d43bf5057b..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CheckInResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "checkInResponse") -public class CheckInResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CheckOut.java b/source/generated/org/alfresco/repo/cmis/ws/CheckOut.java deleted file mode 100644 index cb3e560cf5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CheckOut.java +++ /dev/null @@ -1,122 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "extension" -}) -@XmlRootElement(name = "checkOut") -public class CheckOut { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CheckOutResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CheckOutResponse.java deleted file mode 100644 index 3f3683accd..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CheckOutResponse.java +++ /dev/null @@ -1,113 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="contentCopied" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "contentCopied", - "extension" -}) -@XmlRootElement(name = "checkOutResponse") -public class CheckOutResponse { - - @XmlElement(required = true) - protected String objectId; - protected boolean contentCopied; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the contentCopied property. - * - */ - public boolean isContentCopied() { - return contentCopied; - } - - /** - * Sets the value of the contentCopied property. - * - */ - public void setContentCopied(boolean value) { - this.contentCopied = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisACLCapabilityType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisACLCapabilityType.java deleted file mode 100644 index 8729e20340..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisACLCapabilityType.java +++ /dev/null @@ -1,157 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisACLCapabilityType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisACLCapabilityType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="supportedPermissions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumSupportedPermissions"/>
- *         <element name="propagation" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumACLPropagation"/>
- *         <element name="permissions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPermissionDefinition" maxOccurs="unbounded"/>
- *         <element name="mapping" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPermissionMapping" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisACLCapabilityType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "supportedPermissions", - "propagation", - "permissions", - "mapping" -}) -public class CmisACLCapabilityType { - - @XmlElement(required = true) - protected EnumSupportedPermissions supportedPermissions; - @XmlElement(required = true) - protected EnumACLPropagation propagation; - @XmlElement(required = true) - protected List permissions; - protected List mapping; - - /** - * Gets the value of the supportedPermissions property. - * - * @return - * possible object is - * {@link EnumSupportedPermissions } - * - */ - public EnumSupportedPermissions getSupportedPermissions() { - return supportedPermissions; - } - - /** - * Sets the value of the supportedPermissions property. - * - * @param value - * allowed object is - * {@link EnumSupportedPermissions } - * - */ - public void setSupportedPermissions(EnumSupportedPermissions value) { - this.supportedPermissions = value; - } - - /** - * Gets the value of the propagation property. - * - * @return - * possible object is - * {@link EnumACLPropagation } - * - */ - public EnumACLPropagation getPropagation() { - return propagation; - } - - /** - * Sets the value of the propagation property. - * - * @param value - * allowed object is - * {@link EnumACLPropagation } - * - */ - public void setPropagation(EnumACLPropagation value) { - this.propagation = value; - } - - /** - * Gets the value of the permissions property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the permissions property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPermissions().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisPermissionDefinition } - * - * - */ - public List getPermissions() { - if (permissions == null) { - permissions = new ArrayList(); - } - return this.permissions; - } - - /** - * Gets the value of the mapping property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the mapping property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getMapping().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisPermissionMapping } - * - * - */ - public List getMapping() { - if (mapping == null) { - mapping = new ArrayList(); - } - return this.mapping; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisACLType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisACLType.java deleted file mode 100644 index defa62ab3b..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisACLType.java +++ /dev/null @@ -1,152 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisACLType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisACLType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="ACL" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType"/>
- *         <element name="exact" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisACLType", propOrder = { - "acl", - "exact", - "any" -}) -public class CmisACLType { - - @XmlElement(name = "ACL", required = true) - protected CmisAccessControlListType acl; - protected Boolean exact; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the acl property. - * - * @return - * possible object is - * {@link CmisAccessControlListType } - * - */ - public CmisAccessControlListType getACL() { - return acl; - } - - /** - * Sets the value of the acl property. - * - * @param value - * allowed object is - * {@link CmisAccessControlListType } - * - */ - public void setACL(CmisAccessControlListType value) { - this.acl = value; - } - - /** - * Gets the value of the exact property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isExact() { - return exact; - } - - /** - * Sets the value of the exact property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setExact(Boolean value) { - this.exact = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlEntryType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlEntryType.java deleted file mode 100644 index a6a60943f5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlEntryType.java +++ /dev/null @@ -1,152 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisAccessControlEntryType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisAccessControlEntryType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="principal" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlPrincipalType"/>
- *         <element name="permission" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
- *         <element name="direct" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisAccessControlEntryType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "principal", - "permission", - "direct", - "any" -}) -public class CmisAccessControlEntryType { - - @XmlElement(required = true) - protected CmisAccessControlPrincipalType principal; - @XmlElement(required = true) - protected List permission; - protected boolean direct; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the principal property. - * - * @return - * possible object is - * {@link CmisAccessControlPrincipalType } - * - */ - public CmisAccessControlPrincipalType getPrincipal() { - return principal; - } - - /** - * Sets the value of the principal property. - * - * @param value - * allowed object is - * {@link CmisAccessControlPrincipalType } - * - */ - public void setPrincipal(CmisAccessControlPrincipalType value) { - this.principal = value; - } - - /** - * Gets the value of the permission property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the permission property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPermission().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPermission() { - if (permission == null) { - permission = new ArrayList(); - } - return this.permission; - } - - /** - * Gets the value of the direct property. - * - */ - public boolean isDirect() { - return direct; - } - - /** - * Sets the value of the direct property. - * - */ - public void setDirect(boolean value) { - this.direct = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlListType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlListType.java deleted file mode 100644 index a2e42b723e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlListType.java +++ /dev/null @@ -1,105 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisAccessControlListType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisAccessControlListType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="permission" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlEntryType" maxOccurs="unbounded"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisAccessControlListType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "permission", - "any" -}) -public class CmisAccessControlListType { - - @XmlElement(required = true) - protected List permission; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the permission property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the permission property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPermission().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisAccessControlEntryType } - * - * - */ - public List getPermission() { - if (permission == null) { - permission = new ArrayList(); - } - return this.permission; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlPrincipalType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlPrincipalType.java deleted file mode 100644 index 1697ed1936..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisAccessControlPrincipalType.java +++ /dev/null @@ -1,100 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisAccessControlPrincipalType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisAccessControlPrincipalType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="principalId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisAccessControlPrincipalType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "principalId", - "any" -}) -public class CmisAccessControlPrincipalType { - - @XmlElement(required = true) - protected String principalId; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the principalId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrincipalId() { - return principalId; - } - - /** - * Sets the value of the principalId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrincipalId(String value) { - this.principalId = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisAllowableActionsType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisAllowableActionsType.java deleted file mode 100644 index c4751404f0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisAllowableActionsType.java +++ /dev/null @@ -1,879 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisAllowableActionsType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisAllowableActionsType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="canDeleteObject" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canUpdateProperties" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetFolderTree" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetProperties" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetObjectRelationships" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetObjectParents" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetFolderParent" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetDescendants" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canMoveObject" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canDeleteContentStream" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCheckOut" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCancelCheckOut" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCheckIn" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canSetContentStream" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetAllVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canAddObjectToFolder" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canRemoveObjectFromFolder" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetContentStream" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canApplyPolicy" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetAppliedPolicies" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canRemovePolicy" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetChildren" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCreateDocument" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCreateFolder" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canCreateRelationship" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canDeleteTree" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetRenditions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canGetACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="canApplyACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisAllowableActionsType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "canDeleteObject", - "canUpdateProperties", - "canGetFolderTree", - "canGetProperties", - "canGetObjectRelationships", - "canGetObjectParents", - "canGetFolderParent", - "canGetDescendants", - "canMoveObject", - "canDeleteContentStream", - "canCheckOut", - "canCancelCheckOut", - "canCheckIn", - "canSetContentStream", - "canGetAllVersions", - "canAddObjectToFolder", - "canRemoveObjectFromFolder", - "canGetContentStream", - "canApplyPolicy", - "canGetAppliedPolicies", - "canRemovePolicy", - "canGetChildren", - "canCreateDocument", - "canCreateFolder", - "canCreateRelationship", - "canDeleteTree", - "canGetRenditions", - "canGetACL", - "canApplyACL", - "any" -}) -public class CmisAllowableActionsType { - - protected Boolean canDeleteObject; - protected Boolean canUpdateProperties; - protected Boolean canGetFolderTree; - protected Boolean canGetProperties; - protected Boolean canGetObjectRelationships; - protected Boolean canGetObjectParents; - protected Boolean canGetFolderParent; - protected Boolean canGetDescendants; - protected Boolean canMoveObject; - protected Boolean canDeleteContentStream; - protected Boolean canCheckOut; - protected Boolean canCancelCheckOut; - protected Boolean canCheckIn; - protected Boolean canSetContentStream; - protected Boolean canGetAllVersions; - protected Boolean canAddObjectToFolder; - protected Boolean canRemoveObjectFromFolder; - protected Boolean canGetContentStream; - protected Boolean canApplyPolicy; - protected Boolean canGetAppliedPolicies; - protected Boolean canRemovePolicy; - protected Boolean canGetChildren; - protected Boolean canCreateDocument; - protected Boolean canCreateFolder; - protected Boolean canCreateRelationship; - protected Boolean canDeleteTree; - protected Boolean canGetRenditions; - protected Boolean canGetACL; - protected Boolean canApplyACL; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the canDeleteObject property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanDeleteObject() { - return canDeleteObject; - } - - /** - * Sets the value of the canDeleteObject property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanDeleteObject(Boolean value) { - this.canDeleteObject = value; - } - - /** - * Gets the value of the canUpdateProperties property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanUpdateProperties() { - return canUpdateProperties; - } - - /** - * Sets the value of the canUpdateProperties property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanUpdateProperties(Boolean value) { - this.canUpdateProperties = value; - } - - /** - * Gets the value of the canGetFolderTree property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetFolderTree() { - return canGetFolderTree; - } - - /** - * Sets the value of the canGetFolderTree property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetFolderTree(Boolean value) { - this.canGetFolderTree = value; - } - - /** - * Gets the value of the canGetProperties property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetProperties() { - return canGetProperties; - } - - /** - * Sets the value of the canGetProperties property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetProperties(Boolean value) { - this.canGetProperties = value; - } - - /** - * Gets the value of the canGetObjectRelationships property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetObjectRelationships() { - return canGetObjectRelationships; - } - - /** - * Sets the value of the canGetObjectRelationships property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetObjectRelationships(Boolean value) { - this.canGetObjectRelationships = value; - } - - /** - * Gets the value of the canGetObjectParents property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetObjectParents() { - return canGetObjectParents; - } - - /** - * Sets the value of the canGetObjectParents property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetObjectParents(Boolean value) { - this.canGetObjectParents = value; - } - - /** - * Gets the value of the canGetFolderParent property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetFolderParent() { - return canGetFolderParent; - } - - /** - * Sets the value of the canGetFolderParent property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetFolderParent(Boolean value) { - this.canGetFolderParent = value; - } - - /** - * Gets the value of the canGetDescendants property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetDescendants() { - return canGetDescendants; - } - - /** - * Sets the value of the canGetDescendants property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetDescendants(Boolean value) { - this.canGetDescendants = value; - } - - /** - * Gets the value of the canMoveObject property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanMoveObject() { - return canMoveObject; - } - - /** - * Sets the value of the canMoveObject property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanMoveObject(Boolean value) { - this.canMoveObject = value; - } - - /** - * Gets the value of the canDeleteContentStream property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanDeleteContentStream() { - return canDeleteContentStream; - } - - /** - * Sets the value of the canDeleteContentStream property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanDeleteContentStream(Boolean value) { - this.canDeleteContentStream = value; - } - - /** - * Gets the value of the canCheckOut property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCheckOut() { - return canCheckOut; - } - - /** - * Sets the value of the canCheckOut property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCheckOut(Boolean value) { - this.canCheckOut = value; - } - - /** - * Gets the value of the canCancelCheckOut property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCancelCheckOut() { - return canCancelCheckOut; - } - - /** - * Sets the value of the canCancelCheckOut property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCancelCheckOut(Boolean value) { - this.canCancelCheckOut = value; - } - - /** - * Gets the value of the canCheckIn property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCheckIn() { - return canCheckIn; - } - - /** - * Sets the value of the canCheckIn property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCheckIn(Boolean value) { - this.canCheckIn = value; - } - - /** - * Gets the value of the canSetContentStream property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanSetContentStream() { - return canSetContentStream; - } - - /** - * Sets the value of the canSetContentStream property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanSetContentStream(Boolean value) { - this.canSetContentStream = value; - } - - /** - * Gets the value of the canGetAllVersions property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetAllVersions() { - return canGetAllVersions; - } - - /** - * Sets the value of the canGetAllVersions property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetAllVersions(Boolean value) { - this.canGetAllVersions = value; - } - - /** - * Gets the value of the canAddObjectToFolder property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanAddObjectToFolder() { - return canAddObjectToFolder; - } - - /** - * Sets the value of the canAddObjectToFolder property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanAddObjectToFolder(Boolean value) { - this.canAddObjectToFolder = value; - } - - /** - * Gets the value of the canRemoveObjectFromFolder property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanRemoveObjectFromFolder() { - return canRemoveObjectFromFolder; - } - - /** - * Sets the value of the canRemoveObjectFromFolder property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanRemoveObjectFromFolder(Boolean value) { - this.canRemoveObjectFromFolder = value; - } - - /** - * Gets the value of the canGetContentStream property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetContentStream() { - return canGetContentStream; - } - - /** - * Sets the value of the canGetContentStream property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetContentStream(Boolean value) { - this.canGetContentStream = value; - } - - /** - * Gets the value of the canApplyPolicy property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanApplyPolicy() { - return canApplyPolicy; - } - - /** - * Sets the value of the canApplyPolicy property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanApplyPolicy(Boolean value) { - this.canApplyPolicy = value; - } - - /** - * Gets the value of the canGetAppliedPolicies property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetAppliedPolicies() { - return canGetAppliedPolicies; - } - - /** - * Sets the value of the canGetAppliedPolicies property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetAppliedPolicies(Boolean value) { - this.canGetAppliedPolicies = value; - } - - /** - * Gets the value of the canRemovePolicy property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanRemovePolicy() { - return canRemovePolicy; - } - - /** - * Sets the value of the canRemovePolicy property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanRemovePolicy(Boolean value) { - this.canRemovePolicy = value; - } - - /** - * Gets the value of the canGetChildren property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetChildren() { - return canGetChildren; - } - - /** - * Sets the value of the canGetChildren property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetChildren(Boolean value) { - this.canGetChildren = value; - } - - /** - * Gets the value of the canCreateDocument property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCreateDocument() { - return canCreateDocument; - } - - /** - * Sets the value of the canCreateDocument property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCreateDocument(Boolean value) { - this.canCreateDocument = value; - } - - /** - * Gets the value of the canCreateFolder property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCreateFolder() { - return canCreateFolder; - } - - /** - * Sets the value of the canCreateFolder property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCreateFolder(Boolean value) { - this.canCreateFolder = value; - } - - /** - * Gets the value of the canCreateRelationship property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanCreateRelationship() { - return canCreateRelationship; - } - - /** - * Sets the value of the canCreateRelationship property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanCreateRelationship(Boolean value) { - this.canCreateRelationship = value; - } - - /** - * Gets the value of the canDeleteTree property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanDeleteTree() { - return canDeleteTree; - } - - /** - * Sets the value of the canDeleteTree property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanDeleteTree(Boolean value) { - this.canDeleteTree = value; - } - - /** - * Gets the value of the canGetRenditions property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetRenditions() { - return canGetRenditions; - } - - /** - * Sets the value of the canGetRenditions property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetRenditions(Boolean value) { - this.canGetRenditions = value; - } - - /** - * Gets the value of the canGetACL property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanGetACL() { - return canGetACL; - } - - /** - * Sets the value of the canGetACL property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanGetACL(Boolean value) { - this.canGetACL = value; - } - - /** - * Gets the value of the canApplyACL property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCanApplyACL() { - return canApplyACL; - } - - /** - * Sets the value of the canApplyACL property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCanApplyACL(Boolean value) { - this.canApplyACL = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link Object } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChangeEventType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChangeEventType.java deleted file mode 100644 index 9522823f76..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChangeEventType.java +++ /dev/null @@ -1,131 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisChangeEventType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChangeEventType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="changeType" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumTypeOfChanges"/>
- *         <element name="changeTime" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChangeEventType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "changeType", - "changeTime", - "any" -}) -public class CmisChangeEventType { - - @XmlElement(required = true) - protected EnumTypeOfChanges changeType; - @XmlElement(required = true) - @XmlSchemaType(name = "dateTime") - protected XMLGregorianCalendar changeTime; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the changeType property. - * - * @return - * possible object is - * {@link EnumTypeOfChanges } - * - */ - public EnumTypeOfChanges getChangeType() { - return changeType; - } - - /** - * Sets the value of the changeType property. - * - * @param value - * allowed object is - * {@link EnumTypeOfChanges } - * - */ - public void setChangeType(EnumTypeOfChanges value) { - this.changeType = value; - } - - /** - * Gets the value of the changeTime property. - * - * @return - * possible object is - * {@link XMLGregorianCalendar } - * - */ - public XMLGregorianCalendar getChangeTime() { - return changeTime; - } - - /** - * Sets the value of the changeTime property. - * - * @param value - * allowed object is - * {@link XMLGregorianCalendar } - * - */ - public void setChangeTime(XMLGregorianCalendar value) { - this.changeTime = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoice.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoice.java deleted file mode 100644 index d424dd56ce..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoice.java +++ /dev/null @@ -1,96 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.HashMap; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; - - -/** - *

Java class for cmisChoice complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoice">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *       <attribute name="displayName" use="required" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoice", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlSeeAlso({ - CmisChoiceHtml.class, - CmisChoiceInteger.class, - CmisChoiceDecimal.class, - CmisChoiceString.class, - CmisChoiceDateTime.class, - CmisChoiceId.class, - CmisChoiceBoolean.class, - CmisChoiceUri.class -}) -public class CmisChoice { - - @XmlAttribute(required = true) - @XmlSchemaType(name = "anySimpleType") - protected String displayName; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the displayName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDisplayName() { - return displayName; - } - - /** - * Sets the value of the displayName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDisplayName(String value) { - this.displayName = value; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceBoolean.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceBoolean.java deleted file mode 100644 index 125dccaee9..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceBoolean.java +++ /dev/null @@ -1,103 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceBoolean complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceBoolean">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}boolean" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceBoolean" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceBoolean", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceBoolean - extends CmisChoice -{ - - @XmlElement(type = Boolean.class) - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Boolean } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceBoolean } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDateTime.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDateTime.java deleted file mode 100644 index cdbf46c13d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDateTime.java +++ /dev/null @@ -1,104 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; - - -/** - *

Java class for cmisChoiceDateTime complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceDateTime">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}dateTime" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceDateTime" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceDateTime", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceDateTime - extends CmisChoice -{ - - @XmlSchemaType(name = "dateTime") - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link XMLGregorianCalendar } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceDateTime } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDecimal.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDecimal.java deleted file mode 100644 index 835def4bd2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceDecimal.java +++ /dev/null @@ -1,102 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceDecimal complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceDecimal">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}decimal" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceDecimal" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceDecimal", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceDecimal - extends CmisChoice -{ - - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link BigDecimal } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceDecimal } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceHtml.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceHtml.java deleted file mode 100644 index 2a7f506470..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceHtml.java +++ /dev/null @@ -1,101 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceHtml complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceHtml">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceHtml" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceHtml", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceHtml - extends CmisChoice -{ - - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceHtml } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceId.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceId.java deleted file mode 100644 index 602c261c52..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceId.java +++ /dev/null @@ -1,101 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceId complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceId">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceId" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceId", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceId - extends CmisChoice -{ - - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceId } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceInteger.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceInteger.java deleted file mode 100644 index cf873ec04a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceInteger.java +++ /dev/null @@ -1,102 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceInteger complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceInteger">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}integer" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceInteger" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceInteger", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceInteger - extends CmisChoice -{ - - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link BigInteger } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceInteger } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceString.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceString.java deleted file mode 100644 index 50d2f3e1b2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceString.java +++ /dev/null @@ -1,101 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceString complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceString">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceString" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceString", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceString - extends CmisChoice -{ - - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceString } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceUri.java b/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceUri.java deleted file mode 100644 index 756c72adc8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisChoiceUri.java +++ /dev/null @@ -1,103 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisChoiceUri complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisChoiceUri">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoice">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceUri" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisChoiceUri", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "choice" -}) -public class CmisChoiceUri - extends CmisChoice -{ - - @XmlSchemaType(name = "anyURI") - protected List value; - protected List choice; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceUri } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisContentStreamType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisContentStreamType.java deleted file mode 100644 index 2a80c89300..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisContentStreamType.java +++ /dev/null @@ -1,210 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.activation.DataHandler; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlMimeType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisContentStreamType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisContentStreamType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="length" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="mimeType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="filename" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="stream" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisContentStreamType", propOrder = { - "length", - "mimeType", - "filename", - "stream", - "any" -}) -public class CmisContentStreamType { - - protected BigInteger length; - protected String mimeType; - protected String filename; - @XmlElement(required = true) - @XmlMimeType("application/octet-stream") - protected DataHandler stream; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the length property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getLength() { - return length; - } - - /** - * Sets the value of the length property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setLength(BigInteger value) { - this.length = value; - } - - /** - * Gets the value of the mimeType property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMimeType() { - return mimeType; - } - - /** - * Sets the value of the mimeType property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMimeType(String value) { - this.mimeType = value; - } - - /** - * Gets the value of the filename property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFilename() { - return filename; - } - - /** - * Sets the value of the filename property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFilename(String value) { - this.filename = value; - } - - /** - * Gets the value of the stream property. - * - * @return - * possible object is - * {@link DataHandler } - * - */ - public DataHandler getStream() { - return stream; - } - - /** - * Sets the value of the stream property. - * - * @param value - * allowed object is - * {@link DataHandler } - * - */ - public void setStream(DataHandler value) { - this.stream = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisException.java b/source/generated/org/alfresco/repo/cmis/ws/CmisException.java deleted file mode 100644 index eb765d0a7a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisException.java +++ /dev/null @@ -1,45 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.ws.WebFault; - - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebFault(name = "cmisFault", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") -public class CmisException extends Exception { - public static final long serialVersionUID = 20100113201328L; - - private org.alfresco.repo.cmis.ws.CmisFaultType cmisFault; - - public CmisException() { - super(); - } - - public CmisException(String message) { - super(message); - } - - public CmisException(String message, Throwable cause) { - super(message, cause); - } - - public CmisException(String message, org.alfresco.repo.cmis.ws.CmisFaultType cmisFault) { - super(message); - this.cmisFault = cmisFault; - } - - public CmisException(String message, org.alfresco.repo.cmis.ws.CmisFaultType cmisFault, Throwable cause) { - super(message, cause); - this.cmisFault = cmisFault; - } - - public org.alfresco.repo.cmis.ws.CmisFaultType getFaultInfo() { - return this.cmisFault; - } -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisExtensionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisExtensionType.java deleted file mode 100644 index 34c9edd5b6..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisExtensionType.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisExtensionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisExtensionType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisExtensionType", propOrder = { - "any" -}) -public class CmisExtensionType { - - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisFaultType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisFaultType.java deleted file mode 100644 index 31cc2ced85..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisFaultType.java +++ /dev/null @@ -1,155 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisFaultType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisFaultType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="type" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}enumServiceException"/>
- *         <element name="code" type="{http://www.w3.org/2001/XMLSchema}integer"/>
- *         <element name="message" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisFaultType", propOrder = { - "type", - "code", - "message", - "any" -}) -public class CmisFaultType { - - @XmlElement(required = true) - protected EnumServiceException type; - @XmlElement(required = true) - protected BigInteger code; - @XmlElement(required = true) - protected String message; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link EnumServiceException } - * - */ - public EnumServiceException getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link EnumServiceException } - * - */ - public void setType(EnumServiceException value) { - this.type = value; - } - - /** - * Gets the value of the code property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getCode() { - return code; - } - - /** - * Sets the value of the code property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setCode(BigInteger value) { - this.code = value; - } - - /** - * Gets the value of the message property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMessage() { - return message; - } - - /** - * Sets the value of the message property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMessage(String value) { - this.message = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisListOfIdsType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisListOfIdsType.java deleted file mode 100644 index bde22355cc..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisListOfIdsType.java +++ /dev/null @@ -1,130 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisListOfIdsType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisListOfIdsType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisListOfIdsType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "id", - "any" -}) -public class CmisListOfIdsType { - - @XmlElement(required = true) - protected List id; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the id property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the id property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getId().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getId() { - if (id == null) { - id = new ArrayList(); - } - return this.id; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderContainerType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderContainerType.java deleted file mode 100644 index fc48fbb8d9..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderContainerType.java +++ /dev/null @@ -1,157 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectInFolderContainerType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectInFolderContainerType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectInFolder" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderType"/>
- *         <element name="children" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderContainerType" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectInFolderContainerType", propOrder = { - "objectInFolder", - "children", - "any" -}) -public class CmisObjectInFolderContainerType { - - @XmlElement(required = true) - protected CmisObjectInFolderType objectInFolder; - protected List children; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the objectInFolder property. - * - * @return - * possible object is - * {@link CmisObjectInFolderType } - * - */ - public CmisObjectInFolderType getObjectInFolder() { - return objectInFolder; - } - - /** - * Sets the value of the objectInFolder property. - * - * @param value - * allowed object is - * {@link CmisObjectInFolderType } - * - */ - public void setObjectInFolder(CmisObjectInFolderType value) { - this.objectInFolder = value; - } - - /** - * Gets the value of the children property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the children property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChildren().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectInFolderContainerType } - * - * - */ - public List getChildren() { - if (children == null) { - children = new ArrayList(); - } - return this.children; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderListType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderListType.java deleted file mode 100644 index 499932be41..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderListType.java +++ /dev/null @@ -1,175 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectInFolderListType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectInFolderListType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderType" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="hasMoreItems" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="numItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectInFolderListType", propOrder = { - "objects", - "hasMoreItems", - "numItems", - "any" -}) -public class CmisObjectInFolderListType { - - protected List objects; - protected boolean hasMoreItems; - protected BigInteger numItems; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectInFolderType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - - /** - * Gets the value of the hasMoreItems property. - * - */ - public boolean isHasMoreItems() { - return hasMoreItems; - } - - /** - * Sets the value of the hasMoreItems property. - * - */ - public void setHasMoreItems(boolean value) { - this.hasMoreItems = value; - } - - /** - * Gets the value of the numItems property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getNumItems() { - return numItems; - } - - /** - * Sets the value of the numItems property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setNumItems(BigInteger value) { - this.numItems = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderType.java deleted file mode 100644 index 0432ac0b71..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectInFolderType.java +++ /dev/null @@ -1,152 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectInFolderType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectInFolderType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *         <element name="pathSegment" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectInFolderType", propOrder = { - "object", - "pathSegment", - "any" -}) -public class CmisObjectInFolderType { - - @XmlElement(required = true) - protected CmisObjectType object; - protected String pathSegment; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - - /** - * Gets the value of the pathSegment property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPathSegment() { - return pathSegment; - } - - /** - * Sets the value of the pathSegment property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPathSegment(String value) { - this.pathSegment = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectListType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectListType.java deleted file mode 100644 index 281988477b..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectListType.java +++ /dev/null @@ -1,175 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectListType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectListType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="hasMoreItems" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="numItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectListType", propOrder = { - "objects", - "hasMoreItems", - "numItems", - "any" -}) -public class CmisObjectListType { - - protected List objects; - protected boolean hasMoreItems; - protected BigInteger numItems; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - - /** - * Gets the value of the hasMoreItems property. - * - */ - public boolean isHasMoreItems() { - return hasMoreItems; - } - - /** - * Sets the value of the hasMoreItems property. - * - */ - public void setHasMoreItems(boolean value) { - this.hasMoreItems = value; - } - - /** - * Gets the value of the numItems property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getNumItems() { - return numItems; - } - - /** - * Sets the value of the numItems property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setNumItems(BigInteger value) { - this.numItems = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectParentsType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectParentsType.java deleted file mode 100644 index ab9168c87f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectParentsType.java +++ /dev/null @@ -1,152 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectParentsType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectParentsType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *         <element name="relativePathSegment" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectParentsType", propOrder = { - "object", - "relativePathSegment", - "any" -}) -public class CmisObjectParentsType { - - @XmlElement(required = true) - protected CmisObjectType object; - protected String relativePathSegment; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - - /** - * Gets the value of the relativePathSegment property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRelativePathSegment() { - return relativePathSegment; - } - - /** - * Sets the value of the relativePathSegment property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRelativePathSegment(String value) { - this.relativePathSegment = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisObjectType.java deleted file mode 100644 index 117b6ad3a2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisObjectType.java +++ /dev/null @@ -1,322 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisObjectType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisObjectType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType" minOccurs="0"/>
- *         <element name="allowableActions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAllowableActionsType" minOccurs="0"/>
- *         <element name="relationship" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="changeEventInfo" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChangeEventType" minOccurs="0"/>
- *         <element name="acl" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="exactACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="policyIds" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisListOfIdsType" minOccurs="0"/>
- *         <element name="rendition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisRenditionType" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisObjectType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "properties", - "allowableActions", - "relationship", - "changeEventInfo", - "acl", - "exactACL", - "policyIds", - "rendition", - "any" -}) -public class CmisObjectType { - - protected CmisPropertiesType properties; - protected CmisAllowableActionsType allowableActions; - protected List relationship; - protected CmisChangeEventType changeEventInfo; - protected CmisAccessControlListType acl; - protected Boolean exactACL; - protected CmisListOfIdsType policyIds; - protected List rendition; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the allowableActions property. - * - * @return - * possible object is - * {@link CmisAllowableActionsType } - * - */ - public CmisAllowableActionsType getAllowableActions() { - return allowableActions; - } - - /** - * Sets the value of the allowableActions property. - * - * @param value - * allowed object is - * {@link CmisAllowableActionsType } - * - */ - public void setAllowableActions(CmisAllowableActionsType value) { - this.allowableActions = value; - } - - /** - * Gets the value of the relationship property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the relationship property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getRelationship().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectType } - * - * - */ - public List getRelationship() { - if (relationship == null) { - relationship = new ArrayList(); - } - return this.relationship; - } - - /** - * Gets the value of the changeEventInfo property. - * - * @return - * possible object is - * {@link CmisChangeEventType } - * - */ - public CmisChangeEventType getChangeEventInfo() { - return changeEventInfo; - } - - /** - * Sets the value of the changeEventInfo property. - * - * @param value - * allowed object is - * {@link CmisChangeEventType } - * - */ - public void setChangeEventInfo(CmisChangeEventType value) { - this.changeEventInfo = value; - } - - /** - * Gets the value of the acl property. - * - * @return - * possible object is - * {@link CmisAccessControlListType } - * - */ - public CmisAccessControlListType getAcl() { - return acl; - } - - /** - * Sets the value of the acl property. - * - * @param value - * allowed object is - * {@link CmisAccessControlListType } - * - */ - public void setAcl(CmisAccessControlListType value) { - this.acl = value; - } - - /** - * Gets the value of the exactACL property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isExactACL() { - return exactACL; - } - - /** - * Sets the value of the exactACL property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setExactACL(Boolean value) { - this.exactACL = value; - } - - /** - * Gets the value of the policyIds property. - * - * @return - * possible object is - * {@link CmisListOfIdsType } - * - */ - public CmisListOfIdsType getPolicyIds() { - return policyIds; - } - - /** - * Sets the value of the policyIds property. - * - * @param value - * allowed object is - * {@link CmisListOfIdsType } - * - */ - public void setPolicyIds(CmisListOfIdsType value) { - this.policyIds = value; - } - - /** - * Gets the value of the rendition property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the rendition property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getRendition().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisRenditionType } - * - * - */ - public List getRendition() { - if (rendition == null) { - rendition = new ArrayList(); - } - return this.rendition; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionDefinition.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionDefinition.java deleted file mode 100644 index 0a116ba293..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionDefinition.java +++ /dev/null @@ -1,127 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPermissionDefinition complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPermissionDefinition">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="permission" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPermissionDefinition", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "permission", - "description", - "any" -}) -public class CmisPermissionDefinition { - - @XmlElement(required = true) - protected String permission; - protected String description; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the permission property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPermission() { - return permission; - } - - /** - * Sets the value of the permission property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPermission(String value) { - this.permission = value; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionMapping.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionMapping.java deleted file mode 100644 index da93cf138c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPermissionMapping.java +++ /dev/null @@ -1,133 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPermissionMapping complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPermissionMapping">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="key" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumAllowableActionsKey"/>
- *         <element name="permission" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPermissionMapping", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "key", - "permission", - "any" -}) -public class CmisPermissionMapping { - - @XmlElement(required = true) - protected EnumAllowableActionsKey key; - @XmlElement(required = true) - protected List permission; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the key property. - * - * @return - * possible object is - * {@link EnumAllowableActionsKey } - * - */ - public EnumAllowableActionsKey getKey() { - return key; - } - - /** - * Sets the value of the key property. - * - * @param value - * allowed object is - * {@link EnumAllowableActionsKey } - * - */ - public void setKey(EnumAllowableActionsKey value) { - this.key = value; - } - - /** - * Gets the value of the permission property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the permission property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPermission().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPermission() { - if (permission == null) { - permission = new ArrayList(); - } - return this.permission; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertiesType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertiesType.java deleted file mode 100644 index 42943fcae6..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertiesType.java +++ /dev/null @@ -1,156 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertiesType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertiesType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <choice maxOccurs="unbounded" minOccurs="0">
- *           <element name="propertyBoolean" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyBoolean"/>
- *           <element name="propertyId" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyId"/>
- *           <element name="propertyInteger" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyInteger"/>
- *           <element name="propertyDateTime" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDateTime"/>
- *           <element name="propertyDecimal" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDecimal"/>
- *           <element name="propertyHtml" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyHtml"/>
- *           <element name="propertyString" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyString"/>
- *           <element name="propertyUri" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyUri"/>
- *         </choice>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertiesType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "property", - "any" -}) -public class CmisPropertiesType { - - @XmlElements({ - @XmlElement(name = "propertyHtml", type = CmisPropertyHtml.class, nillable = true), - @XmlElement(name = "propertyDateTime", type = CmisPropertyDateTime.class, nillable = true), - @XmlElement(name = "propertyUri", type = CmisPropertyUri.class, nillable = true), - @XmlElement(name = "propertyBoolean", type = CmisPropertyBoolean.class, nillable = true), - @XmlElement(name = "propertyString", type = CmisPropertyString.class, nillable = true), - @XmlElement(name = "propertyId", type = CmisPropertyId.class, nillable = true), - @XmlElement(name = "propertyDecimal", type = CmisPropertyDecimal.class, nillable = true), - @XmlElement(name = "propertyInteger", type = CmisPropertyInteger.class, nillable = true) - }) - protected List property; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the property property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the property property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getProperty().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisPropertyHtml } - * {@link CmisPropertyDateTime } - * {@link CmisPropertyUri } - * {@link CmisPropertyBoolean } - * {@link CmisPropertyString } - * {@link CmisPropertyId } - * {@link CmisPropertyDecimal } - * {@link CmisPropertyInteger } - * - * - */ - public List getProperty() { - if (property == null) { - property = new ArrayList(); - } - return this.property; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisProperty.java b/source/generated/org/alfresco/repo/cmis/ws/CmisProperty.java deleted file mode 100644 index cd6752d474..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisProperty.java +++ /dev/null @@ -1,180 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.HashMap; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; - - -/** - *

Java class for cmisProperty complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisProperty">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *       <attribute name="propertyDefinitionId" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
- *       <attribute name="localName" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
- *       <attribute name="displayName" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
- *       <attribute name="queryName" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisProperty", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlSeeAlso({ - CmisPropertyHtml.class, - CmisPropertyDecimal.class, - CmisPropertyDateTime.class, - CmisPropertyId.class, - CmisPropertyString.class, - CmisPropertyUri.class, - CmisPropertyBoolean.class, - CmisPropertyInteger.class -}) -public class CmisProperty { - - @XmlAttribute - @XmlSchemaType(name = "anySimpleType") - protected String propertyDefinitionId; - @XmlAttribute - @XmlSchemaType(name = "anySimpleType") - protected String localName; - @XmlAttribute - @XmlSchemaType(name = "anySimpleType") - protected String displayName; - @XmlAttribute - @XmlSchemaType(name = "anySimpleType") - protected String queryName; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the propertyDefinitionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPropertyDefinitionId() { - return propertyDefinitionId; - } - - /** - * Sets the value of the propertyDefinitionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPropertyDefinitionId(String value) { - this.propertyDefinitionId = value; - } - - /** - * Gets the value of the localName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocalName() { - return localName; - } - - /** - * Sets the value of the localName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocalName(String value) { - this.localName = value; - } - - /** - * Gets the value of the displayName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDisplayName() { - return displayName; - } - - /** - * Sets the value of the displayName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDisplayName(String value) { - this.displayName = value; - } - - /** - * Gets the value of the queryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getQueryName() { - return queryName; - } - - /** - * Sets the value of the queryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setQueryName(String value) { - this.queryName = value; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBoolean.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBoolean.java deleted file mode 100644 index 183b2802c8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBoolean.java +++ /dev/null @@ -1,107 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyBoolean complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyBoolean">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}boolean" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyBoolean", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyBoolean - extends CmisProperty -{ - - @XmlElement(type = Boolean.class) - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Boolean } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBooleanDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBooleanDefinitionType.java deleted file mode 100644 index e4c7b0988f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyBooleanDefinitionType.java +++ /dev/null @@ -1,96 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyBooleanDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyBooleanDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyBoolean" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceBoolean" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyBooleanDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "choice" -}) -public class CmisPropertyBooleanDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyBoolean defaultValue; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyBoolean } - * - */ - public CmisPropertyBoolean getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyBoolean } - * - */ - public void setDefaultValue(CmisPropertyBoolean value) { - this.defaultValue = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceBoolean } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTime.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTime.java deleted file mode 100644 index dcb994c71c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTime.java +++ /dev/null @@ -1,108 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyDateTime complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyDateTime">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}dateTime" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyDateTime", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyDateTime - extends CmisProperty -{ - - @XmlSchemaType(name = "dateTime") - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link XMLGregorianCalendar } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTimeDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTimeDefinitionType.java deleted file mode 100644 index ddba4413f5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDateTimeDefinitionType.java +++ /dev/null @@ -1,123 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyDateTimeDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyDateTimeDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDateTime" minOccurs="0"/>
- *         <element name="resolution" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumDateTimeResolution" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceDateTime" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyDateTimeDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "resolution", - "choice" -}) -public class CmisPropertyDateTimeDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyDateTime defaultValue; - protected EnumDateTimeResolution resolution; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyDateTime } - * - */ - public CmisPropertyDateTime getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyDateTime } - * - */ - public void setDefaultValue(CmisPropertyDateTime value) { - this.defaultValue = value; - } - - /** - * Gets the value of the resolution property. - * - * @return - * possible object is - * {@link EnumDateTimeResolution } - * - */ - public EnumDateTimeResolution getResolution() { - return resolution; - } - - /** - * Sets the value of the resolution property. - * - * @param value - * allowed object is - * {@link EnumDateTimeResolution } - * - */ - public void setResolution(EnumDateTimeResolution value) { - this.resolution = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceDateTime } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimal.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimal.java deleted file mode 100644 index 60fed78de4..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimal.java +++ /dev/null @@ -1,106 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyDecimal complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyDecimal">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}decimal" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyDecimal", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyDecimal - extends CmisProperty -{ - - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link BigDecimal } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimalDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimalDefinitionType.java deleted file mode 100644 index 4c2afb585e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDecimalDefinitionType.java +++ /dev/null @@ -1,179 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyDecimalDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyDecimalDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDecimal" minOccurs="0"/>
- *         <element name="maxValue" type="{http://www.w3.org/2001/XMLSchema}decimal" minOccurs="0"/>
- *         <element name="minValue" type="{http://www.w3.org/2001/XMLSchema}decimal" minOccurs="0"/>
- *         <element name="precision" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumDecimalPrecision" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceDecimal" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyDecimalDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "maxValue", - "minValue", - "precision", - "choice" -}) -public class CmisPropertyDecimalDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyDecimal defaultValue; - protected BigDecimal maxValue; - protected BigDecimal minValue; - protected BigInteger precision; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyDecimal } - * - */ - public CmisPropertyDecimal getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyDecimal } - * - */ - public void setDefaultValue(CmisPropertyDecimal value) { - this.defaultValue = value; - } - - /** - * Gets the value of the maxValue property. - * - * @return - * possible object is - * {@link BigDecimal } - * - */ - public BigDecimal getMaxValue() { - return maxValue; - } - - /** - * Sets the value of the maxValue property. - * - * @param value - * allowed object is - * {@link BigDecimal } - * - */ - public void setMaxValue(BigDecimal value) { - this.maxValue = value; - } - - /** - * Gets the value of the minValue property. - * - * @return - * possible object is - * {@link BigDecimal } - * - */ - public BigDecimal getMinValue() { - return minValue; - } - - /** - * Sets the value of the minValue property. - * - * @param value - * allowed object is - * {@link BigDecimal } - * - */ - public void setMinValue(BigDecimal value) { - this.minValue = value; - } - - /** - * Gets the value of the precision property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getPrecision() { - return precision; - } - - /** - * Sets the value of the precision property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setPrecision(BigInteger value) { - this.precision = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceDecimal } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDefinitionType.java deleted file mode 100644 index 075820cf58..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyDefinitionType.java +++ /dev/null @@ -1,469 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyDefinitionType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="localName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="localNamespace" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/>
- *         <element name="displayName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="queryName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="propertyType" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumPropertyType"/>
- *         <element name="cardinality" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCardinality"/>
- *         <element name="updatability" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumUpdatability"/>
- *         <element name="inherited" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="required" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="queryable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="orderable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="openChoice" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "id", - "localName", - "localNamespace", - "displayName", - "queryName", - "description", - "propertyType", - "cardinality", - "updatability", - "inherited", - "required", - "queryable", - "orderable", - "openChoice", - "any" -}) -@XmlSeeAlso({ - CmisPropertyDateTimeDefinitionType.class, - CmisPropertyUriDefinitionType.class, - CmisPropertyDecimalDefinitionType.class, - CmisPropertyIntegerDefinitionType.class, - CmisPropertyBooleanDefinitionType.class, - CmisPropertyHtmlDefinitionType.class, - CmisPropertyIdDefinitionType.class, - CmisPropertyStringDefinitionType.class -}) -public class CmisPropertyDefinitionType { - - @XmlElement(required = true) - protected String id; - @XmlElement(required = true) - protected String localName; - @XmlSchemaType(name = "anyURI") - protected String localNamespace; - protected String displayName; - protected String queryName; - protected String description; - @XmlElement(required = true) - protected EnumPropertyType propertyType; - @XmlElement(required = true) - protected EnumCardinality cardinality; - @XmlElement(required = true) - protected EnumUpdatability updatability; - protected Boolean inherited; - protected boolean required; - protected boolean queryable; - protected boolean orderable; - protected Boolean openChoice; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the localName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocalName() { - return localName; - } - - /** - * Sets the value of the localName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocalName(String value) { - this.localName = value; - } - - /** - * Gets the value of the localNamespace property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocalNamespace() { - return localNamespace; - } - - /** - * Sets the value of the localNamespace property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocalNamespace(String value) { - this.localNamespace = value; - } - - /** - * Gets the value of the displayName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDisplayName() { - return displayName; - } - - /** - * Sets the value of the displayName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDisplayName(String value) { - this.displayName = value; - } - - /** - * Gets the value of the queryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getQueryName() { - return queryName; - } - - /** - * Sets the value of the queryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setQueryName(String value) { - this.queryName = value; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the propertyType property. - * - * @return - * possible object is - * {@link EnumPropertyType } - * - */ - public EnumPropertyType getPropertyType() { - return propertyType; - } - - /** - * Sets the value of the propertyType property. - * - * @param value - * allowed object is - * {@link EnumPropertyType } - * - */ - public void setPropertyType(EnumPropertyType value) { - this.propertyType = value; - } - - /** - * Gets the value of the cardinality property. - * - * @return - * possible object is - * {@link EnumCardinality } - * - */ - public EnumCardinality getCardinality() { - return cardinality; - } - - /** - * Sets the value of the cardinality property. - * - * @param value - * allowed object is - * {@link EnumCardinality } - * - */ - public void setCardinality(EnumCardinality value) { - this.cardinality = value; - } - - /** - * Gets the value of the updatability property. - * - * @return - * possible object is - * {@link EnumUpdatability } - * - */ - public EnumUpdatability getUpdatability() { - return updatability; - } - - /** - * Sets the value of the updatability property. - * - * @param value - * allowed object is - * {@link EnumUpdatability } - * - */ - public void setUpdatability(EnumUpdatability value) { - this.updatability = value; - } - - /** - * Gets the value of the inherited property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isInherited() { - return inherited; - } - - /** - * Sets the value of the inherited property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setInherited(Boolean value) { - this.inherited = value; - } - - /** - * Gets the value of the required property. - * - */ - public boolean isRequired() { - return required; - } - - /** - * Sets the value of the required property. - * - */ - public void setRequired(boolean value) { - this.required = value; - } - - /** - * Gets the value of the queryable property. - * - */ - public boolean isQueryable() { - return queryable; - } - - /** - * Sets the value of the queryable property. - * - */ - public void setQueryable(boolean value) { - this.queryable = value; - } - - /** - * Gets the value of the orderable property. - * - */ - public boolean isOrderable() { - return orderable; - } - - /** - * Sets the value of the orderable property. - * - */ - public void setOrderable(boolean value) { - this.orderable = value; - } - - /** - * Gets the value of the openChoice property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isOpenChoice() { - return openChoice; - } - - /** - * Sets the value of the openChoice property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setOpenChoice(Boolean value) { - this.openChoice = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtml.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtml.java deleted file mode 100644 index 04af9e5642..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtml.java +++ /dev/null @@ -1,105 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyHtml complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyHtml">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyHtml", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyHtml - extends CmisProperty -{ - - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtmlDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtmlDefinitionType.java deleted file mode 100644 index ac9d0b13d5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyHtmlDefinitionType.java +++ /dev/null @@ -1,96 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyHtmlDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyHtmlDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyHtml" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceHtml" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyHtmlDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "choice" -}) -public class CmisPropertyHtmlDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyHtml defaultValue; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyHtml } - * - */ - public CmisPropertyHtml getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyHtml } - * - */ - public void setDefaultValue(CmisPropertyHtml value) { - this.defaultValue = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceHtml } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyId.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyId.java deleted file mode 100644 index 4cfa01ea20..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyId.java +++ /dev/null @@ -1,105 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyId complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyId">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyId", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyId - extends CmisProperty -{ - - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIdDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIdDefinitionType.java deleted file mode 100644 index 7814a8499e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIdDefinitionType.java +++ /dev/null @@ -1,96 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyIdDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyIdDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyId" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceId" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyIdDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "choice" -}) -public class CmisPropertyIdDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyId defaultValue; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyId } - * - */ - public CmisPropertyId getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyId } - * - */ - public void setDefaultValue(CmisPropertyId value) { - this.defaultValue = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceId } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyInteger.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyInteger.java deleted file mode 100644 index c9337a62de..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyInteger.java +++ /dev/null @@ -1,106 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyInteger complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyInteger">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}integer" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyInteger", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyInteger - extends CmisProperty -{ - - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link BigInteger } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIntegerDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIntegerDefinitionType.java deleted file mode 100644 index 8211ddea6e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyIntegerDefinitionType.java +++ /dev/null @@ -1,151 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyIntegerDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyIntegerDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyInteger" minOccurs="0"/>
- *         <element name="maxValue" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="minValue" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceInteger" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyIntegerDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "maxValue", - "minValue", - "choice" -}) -public class CmisPropertyIntegerDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyInteger defaultValue; - protected BigInteger maxValue; - protected BigInteger minValue; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyInteger } - * - */ - public CmisPropertyInteger getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyInteger } - * - */ - public void setDefaultValue(CmisPropertyInteger value) { - this.defaultValue = value; - } - - /** - * Gets the value of the maxValue property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMaxValue() { - return maxValue; - } - - /** - * Sets the value of the maxValue property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMaxValue(BigInteger value) { - this.maxValue = value; - } - - /** - * Gets the value of the minValue property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMinValue() { - return minValue; - } - - /** - * Sets the value of the minValue property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMinValue(BigInteger value) { - this.minValue = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceInteger } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyString.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyString.java deleted file mode 100644 index 906b99909e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyString.java +++ /dev/null @@ -1,105 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyString complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyString">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyString", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyString - extends CmisProperty -{ - - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyStringDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyStringDefinitionType.java deleted file mode 100644 index eab7b805f5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyStringDefinitionType.java +++ /dev/null @@ -1,124 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyStringDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyStringDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyString" minOccurs="0"/>
- *         <element name="maxLength" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceString" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyStringDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "maxLength", - "choice" -}) -public class CmisPropertyStringDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyString defaultValue; - protected BigInteger maxLength; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyString } - * - */ - public CmisPropertyString getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyString } - * - */ - public void setDefaultValue(CmisPropertyString value) { - this.defaultValue = value; - } - - /** - * Gets the value of the maxLength property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMaxLength() { - return maxLength; - } - - /** - * Sets the value of the maxLength property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMaxLength(BigInteger value) { - this.maxLength = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceString } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUri.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUri.java deleted file mode 100644 index 9756117d46..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUri.java +++ /dev/null @@ -1,107 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisPropertyUri complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyUri">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisProperty">
- *       <sequence>
- *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyUri", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "value", - "any" -}) -public class CmisPropertyUri - extends CmisProperty -{ - - @XmlSchemaType(name = "anyURI") - protected List value; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the value property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the value property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getValue().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getValue() { - if (value == null) { - value = new ArrayList(); - } - return this.value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUriDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUriDefinitionType.java deleted file mode 100644 index 3edd03f990..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisPropertyUriDefinitionType.java +++ /dev/null @@ -1,96 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisPropertyUriDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisPropertyUriDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDefinitionType">
- *       <sequence>
- *         <element name="defaultValue" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyUri" minOccurs="0"/>
- *         <element name="choice" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisChoiceUri" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisPropertyUriDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "defaultValue", - "choice" -}) -public class CmisPropertyUriDefinitionType - extends CmisPropertyDefinitionType -{ - - protected CmisPropertyUri defaultValue; - protected List choice; - - /** - * Gets the value of the defaultValue property. - * - * @return - * possible object is - * {@link CmisPropertyUri } - * - */ - public CmisPropertyUri getDefaultValue() { - return defaultValue; - } - - /** - * Sets the value of the defaultValue property. - * - * @param value - * allowed object is - * {@link CmisPropertyUri } - * - */ - public void setDefaultValue(CmisPropertyUri value) { - this.defaultValue = value; - } - - /** - * Gets the value of the choice property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the choice property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChoice().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisChoiceUri } - * - * - */ - public List getChoice() { - if (choice == null) { - choice = new ArrayList(); - } - return this.choice; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisQueryType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisQueryType.java deleted file mode 100644 index 9054116ea5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisQueryType.java +++ /dev/null @@ -1,288 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisQueryType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisQueryType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="statement" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="searchAllVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisQueryType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "statement", - "searchAllVersions", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "maxItems", - "skipCount", - "any" -}) -public class CmisQueryType { - - @XmlElement(required = true) - protected String statement; - protected Boolean searchAllVersions; - protected Boolean includeAllowableActions; - protected EnumIncludeRelationships includeRelationships; - protected String renditionFilter; - protected BigInteger maxItems; - protected BigInteger skipCount; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the statement property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStatement() { - return statement; - } - - /** - * Sets the value of the statement property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStatement(String value) { - this.statement = value; - } - - /** - * Gets the value of the searchAllVersions property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isSearchAllVersions() { - return searchAllVersions; - } - - /** - * Sets the value of the searchAllVersions property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setSearchAllVersions(Boolean value) { - this.searchAllVersions = value; - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIncludeAllowableActions(Boolean value) { - this.includeAllowableActions = value; - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link EnumIncludeRelationships } - * - */ - public EnumIncludeRelationships getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link EnumIncludeRelationships } - * - */ - public void setIncludeRelationships(EnumIncludeRelationships value) { - this.includeRelationships = value; - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRenditionFilter(String value) { - this.renditionFilter = value; - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMaxItems(BigInteger value) { - this.maxItems = value; - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setSkipCount(BigInteger value) { - this.skipCount = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisRenditionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisRenditionType.java deleted file mode 100644 index 757187a3d3..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisRenditionType.java +++ /dev/null @@ -1,293 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisRenditionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisRenditionType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="streamId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="mimetype" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="length" type="{http://www.w3.org/2001/XMLSchema}integer"/>
- *         <element name="kind" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="title" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="height" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="width" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="renditionDocumentId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisRenditionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "streamId", - "mimetype", - "length", - "kind", - "title", - "height", - "width", - "renditionDocumentId", - "any" -}) -public class CmisRenditionType { - - @XmlElement(required = true) - protected String streamId; - @XmlElement(required = true) - protected String mimetype; - @XmlElement(required = true) - protected BigInteger length; - @XmlElement(required = true) - protected String kind; - protected String title; - protected BigInteger height; - protected BigInteger width; - protected String renditionDocumentId; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the streamId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStreamId() { - return streamId; - } - - /** - * Sets the value of the streamId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStreamId(String value) { - this.streamId = value; - } - - /** - * Gets the value of the mimetype property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMimetype() { - return mimetype; - } - - /** - * Sets the value of the mimetype property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMimetype(String value) { - this.mimetype = value; - } - - /** - * Gets the value of the length property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getLength() { - return length; - } - - /** - * Sets the value of the length property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setLength(BigInteger value) { - this.length = value; - } - - /** - * Gets the value of the kind property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getKind() { - return kind; - } - - /** - * Sets the value of the kind property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setKind(String value) { - this.kind = value; - } - - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } - - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } - - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getHeight() { - return height; - } - - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setHeight(BigInteger value) { - this.height = value; - } - - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getWidth() { - return width; - } - - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setWidth(BigInteger value) { - this.width = value; - } - - /** - * Gets the value of the renditionDocumentId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRenditionDocumentId() { - return renditionDocumentId; - } - - /** - * Sets the value of the renditionDocumentId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRenditionDocumentId(String value) { - this.renditionDocumentId = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryCapabilitiesType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryCapabilitiesType.java deleted file mode 100644 index d1198df11d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryCapabilitiesType.java +++ /dev/null @@ -1,416 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisRepositoryCapabilitiesType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisRepositoryCapabilitiesType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="capabilityACL" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityACL"/>
- *         <element name="capabilityAllVersionsSearchable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityChanges" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityChanges"/>
- *         <element name="capabilityContentStreamUpdatability" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityContentStreamUpdates"/>
- *         <element name="capabilityGetDescendants" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityGetFolderTree" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityMultifiling" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityPWCSearchable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityPWCUpdatable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityQuery" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityQuery"/>
- *         <element name="capabilityRenditions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityRendition"/>
- *         <element name="capabilityUnfiling" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityVersionSpecificFiling" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="capabilityJoin" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumCapabilityJoin"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisRepositoryCapabilitiesType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "capabilityACL", - "capabilityAllVersionsSearchable", - "capabilityChanges", - "capabilityContentStreamUpdatability", - "capabilityGetDescendants", - "capabilityGetFolderTree", - "capabilityMultifiling", - "capabilityPWCSearchable", - "capabilityPWCUpdatable", - "capabilityQuery", - "capabilityRenditions", - "capabilityUnfiling", - "capabilityVersionSpecificFiling", - "capabilityJoin", - "any" -}) -public class CmisRepositoryCapabilitiesType { - - @XmlElement(required = true) - protected EnumCapabilityACL capabilityACL; - protected boolean capabilityAllVersionsSearchable; - @XmlElement(required = true) - protected EnumCapabilityChanges capabilityChanges; - @XmlElement(required = true) - protected EnumCapabilityContentStreamUpdates capabilityContentStreamUpdatability; - protected boolean capabilityGetDescendants; - protected boolean capabilityGetFolderTree; - protected boolean capabilityMultifiling; - protected boolean capabilityPWCSearchable; - protected boolean capabilityPWCUpdatable; - @XmlElement(required = true) - protected EnumCapabilityQuery capabilityQuery; - @XmlElement(required = true) - protected EnumCapabilityRendition capabilityRenditions; - protected boolean capabilityUnfiling; - protected boolean capabilityVersionSpecificFiling; - @XmlElement(required = true) - protected EnumCapabilityJoin capabilityJoin; - @XmlAnyElement - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the capabilityACL property. - * - * @return - * possible object is - * {@link EnumCapabilityACL } - * - */ - public EnumCapabilityACL getCapabilityACL() { - return capabilityACL; - } - - /** - * Sets the value of the capabilityACL property. - * - * @param value - * allowed object is - * {@link EnumCapabilityACL } - * - */ - public void setCapabilityACL(EnumCapabilityACL value) { - this.capabilityACL = value; - } - - /** - * Gets the value of the capabilityAllVersionsSearchable property. - * - */ - public boolean isCapabilityAllVersionsSearchable() { - return capabilityAllVersionsSearchable; - } - - /** - * Sets the value of the capabilityAllVersionsSearchable property. - * - */ - public void setCapabilityAllVersionsSearchable(boolean value) { - this.capabilityAllVersionsSearchable = value; - } - - /** - * Gets the value of the capabilityChanges property. - * - * @return - * possible object is - * {@link EnumCapabilityChanges } - * - */ - public EnumCapabilityChanges getCapabilityChanges() { - return capabilityChanges; - } - - /** - * Sets the value of the capabilityChanges property. - * - * @param value - * allowed object is - * {@link EnumCapabilityChanges } - * - */ - public void setCapabilityChanges(EnumCapabilityChanges value) { - this.capabilityChanges = value; - } - - /** - * Gets the value of the capabilityContentStreamUpdatability property. - * - * @return - * possible object is - * {@link EnumCapabilityContentStreamUpdates } - * - */ - public EnumCapabilityContentStreamUpdates getCapabilityContentStreamUpdatability() { - return capabilityContentStreamUpdatability; - } - - /** - * Sets the value of the capabilityContentStreamUpdatability property. - * - * @param value - * allowed object is - * {@link EnumCapabilityContentStreamUpdates } - * - */ - public void setCapabilityContentStreamUpdatability(EnumCapabilityContentStreamUpdates value) { - this.capabilityContentStreamUpdatability = value; - } - - /** - * Gets the value of the capabilityGetDescendants property. - * - */ - public boolean isCapabilityGetDescendants() { - return capabilityGetDescendants; - } - - /** - * Sets the value of the capabilityGetDescendants property. - * - */ - public void setCapabilityGetDescendants(boolean value) { - this.capabilityGetDescendants = value; - } - - /** - * Gets the value of the capabilityGetFolderTree property. - * - */ - public boolean isCapabilityGetFolderTree() { - return capabilityGetFolderTree; - } - - /** - * Sets the value of the capabilityGetFolderTree property. - * - */ - public void setCapabilityGetFolderTree(boolean value) { - this.capabilityGetFolderTree = value; - } - - /** - * Gets the value of the capabilityMultifiling property. - * - */ - public boolean isCapabilityMultifiling() { - return capabilityMultifiling; - } - - /** - * Sets the value of the capabilityMultifiling property. - * - */ - public void setCapabilityMultifiling(boolean value) { - this.capabilityMultifiling = value; - } - - /** - * Gets the value of the capabilityPWCSearchable property. - * - */ - public boolean isCapabilityPWCSearchable() { - return capabilityPWCSearchable; - } - - /** - * Sets the value of the capabilityPWCSearchable property. - * - */ - public void setCapabilityPWCSearchable(boolean value) { - this.capabilityPWCSearchable = value; - } - - /** - * Gets the value of the capabilityPWCUpdatable property. - * - */ - public boolean isCapabilityPWCUpdatable() { - return capabilityPWCUpdatable; - } - - /** - * Sets the value of the capabilityPWCUpdatable property. - * - */ - public void setCapabilityPWCUpdatable(boolean value) { - this.capabilityPWCUpdatable = value; - } - - /** - * Gets the value of the capabilityQuery property. - * - * @return - * possible object is - * {@link EnumCapabilityQuery } - * - */ - public EnumCapabilityQuery getCapabilityQuery() { - return capabilityQuery; - } - - /** - * Sets the value of the capabilityQuery property. - * - * @param value - * allowed object is - * {@link EnumCapabilityQuery } - * - */ - public void setCapabilityQuery(EnumCapabilityQuery value) { - this.capabilityQuery = value; - } - - /** - * Gets the value of the capabilityRenditions property. - * - * @return - * possible object is - * {@link EnumCapabilityRendition } - * - */ - public EnumCapabilityRendition getCapabilityRenditions() { - return capabilityRenditions; - } - - /** - * Sets the value of the capabilityRenditions property. - * - * @param value - * allowed object is - * {@link EnumCapabilityRendition } - * - */ - public void setCapabilityRenditions(EnumCapabilityRendition value) { - this.capabilityRenditions = value; - } - - /** - * Gets the value of the capabilityUnfiling property. - * - */ - public boolean isCapabilityUnfiling() { - return capabilityUnfiling; - } - - /** - * Sets the value of the capabilityUnfiling property. - * - */ - public void setCapabilityUnfiling(boolean value) { - this.capabilityUnfiling = value; - } - - /** - * Gets the value of the capabilityVersionSpecificFiling property. - * - */ - public boolean isCapabilityVersionSpecificFiling() { - return capabilityVersionSpecificFiling; - } - - /** - * Sets the value of the capabilityVersionSpecificFiling property. - * - */ - public void setCapabilityVersionSpecificFiling(boolean value) { - this.capabilityVersionSpecificFiling = value; - } - - /** - * Gets the value of the capabilityJoin property. - * - * @return - * possible object is - * {@link EnumCapabilityJoin } - * - */ - public EnumCapabilityJoin getCapabilityJoin() { - return capabilityJoin; - } - - /** - * Sets the value of the capabilityJoin property. - * - * @param value - * allowed object is - * {@link EnumCapabilityJoin } - * - */ - public void setCapabilityJoin(EnumCapabilityJoin value) { - this.capabilityJoin = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryEntryType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryEntryType.java deleted file mode 100644 index ee086db4eb..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryEntryType.java +++ /dev/null @@ -1,153 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisRepositoryEntryType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisRepositoryEntryType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="repositoryName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisRepositoryEntryType", propOrder = { - "repositoryId", - "repositoryName", - "any" -}) -public class CmisRepositoryEntryType { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String repositoryName; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the repositoryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryName() { - return repositoryName; - } - - /** - * Sets the value of the repositoryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryName(String value) { - this.repositoryName = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryInfoType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryInfoType.java deleted file mode 100644 index 04c068fb4c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisRepositoryInfoType.java +++ /dev/null @@ -1,545 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisRepositoryInfoType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisRepositoryInfoType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="repositoryName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="repositoryDescription" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="vendorName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="productName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="productVersion" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="rootFolderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="latestChangeLogToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="capabilities" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisRepositoryCapabilitiesType"/>
- *         <element name="aclCapability" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisACLCapabilityType" minOccurs="0"/>
- *         <element name="cmisVersionSupported" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="thinClientURI" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/>
- *         <element name="changesIncomplete" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="changesOnType" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumBaseObjectTypeIds" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="principalAnonymous" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="principalAnyone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisRepositoryInfoType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "repositoryId", - "repositoryName", - "repositoryDescription", - "vendorName", - "productName", - "productVersion", - "rootFolderId", - "latestChangeLogToken", - "capabilities", - "aclCapability", - "cmisVersionSupported", - "thinClientURI", - "changesIncomplete", - "changesOnType", - "principalAnonymous", - "principalAnyone", - "any" -}) -public class CmisRepositoryInfoType { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String repositoryName; - @XmlElement(required = true) - protected String repositoryDescription; - @XmlElement(required = true) - protected String vendorName; - @XmlElement(required = true) - protected String productName; - @XmlElement(required = true) - protected String productVersion; - @XmlElement(required = true) - protected String rootFolderId; - protected String latestChangeLogToken; - @XmlElement(required = true) - protected CmisRepositoryCapabilitiesType capabilities; - protected CmisACLCapabilityType aclCapability; - @XmlElement(required = true) - protected String cmisVersionSupported; - @XmlSchemaType(name = "anyURI") - protected String thinClientURI; - protected Boolean changesIncomplete; - protected List changesOnType; - protected String principalAnonymous; - protected String principalAnyone; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the repositoryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryName() { - return repositoryName; - } - - /** - * Sets the value of the repositoryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryName(String value) { - this.repositoryName = value; - } - - /** - * Gets the value of the repositoryDescription property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryDescription() { - return repositoryDescription; - } - - /** - * Sets the value of the repositoryDescription property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryDescription(String value) { - this.repositoryDescription = value; - } - - /** - * Gets the value of the vendorName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getVendorName() { - return vendorName; - } - - /** - * Sets the value of the vendorName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setVendorName(String value) { - this.vendorName = value; - } - - /** - * Gets the value of the productName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getProductName() { - return productName; - } - - /** - * Sets the value of the productName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setProductName(String value) { - this.productName = value; - } - - /** - * Gets the value of the productVersion property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getProductVersion() { - return productVersion; - } - - /** - * Sets the value of the productVersion property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setProductVersion(String value) { - this.productVersion = value; - } - - /** - * Gets the value of the rootFolderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRootFolderId() { - return rootFolderId; - } - - /** - * Sets the value of the rootFolderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRootFolderId(String value) { - this.rootFolderId = value; - } - - /** - * Gets the value of the latestChangeLogToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLatestChangeLogToken() { - return latestChangeLogToken; - } - - /** - * Sets the value of the latestChangeLogToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLatestChangeLogToken(String value) { - this.latestChangeLogToken = value; - } - - /** - * Gets the value of the capabilities property. - * - * @return - * possible object is - * {@link CmisRepositoryCapabilitiesType } - * - */ - public CmisRepositoryCapabilitiesType getCapabilities() { - return capabilities; - } - - /** - * Sets the value of the capabilities property. - * - * @param value - * allowed object is - * {@link CmisRepositoryCapabilitiesType } - * - */ - public void setCapabilities(CmisRepositoryCapabilitiesType value) { - this.capabilities = value; - } - - /** - * Gets the value of the aclCapability property. - * - * @return - * possible object is - * {@link CmisACLCapabilityType } - * - */ - public CmisACLCapabilityType getAclCapability() { - return aclCapability; - } - - /** - * Sets the value of the aclCapability property. - * - * @param value - * allowed object is - * {@link CmisACLCapabilityType } - * - */ - public void setAclCapability(CmisACLCapabilityType value) { - this.aclCapability = value; - } - - /** - * Gets the value of the cmisVersionSupported property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCmisVersionSupported() { - return cmisVersionSupported; - } - - /** - * Sets the value of the cmisVersionSupported property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCmisVersionSupported(String value) { - this.cmisVersionSupported = value; - } - - /** - * Gets the value of the thinClientURI property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getThinClientURI() { - return thinClientURI; - } - - /** - * Sets the value of the thinClientURI property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setThinClientURI(String value) { - this.thinClientURI = value; - } - - /** - * Gets the value of the changesIncomplete property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isChangesIncomplete() { - return changesIncomplete; - } - - /** - * Sets the value of the changesIncomplete property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setChangesIncomplete(Boolean value) { - this.changesIncomplete = value; - } - - /** - * Gets the value of the changesOnType property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the changesOnType property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChangesOnType().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link EnumBaseObjectTypeIds } - * - * - */ - public List getChangesOnType() { - if (changesOnType == null) { - changesOnType = new ArrayList(); - } - return this.changesOnType; - } - - /** - * Gets the value of the principalAnonymous property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrincipalAnonymous() { - return principalAnonymous; - } - - /** - * Sets the value of the principalAnonymous property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrincipalAnonymous(String value) { - this.principalAnonymous = value; - } - - /** - * Gets the value of the principalAnyone property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrincipalAnyone() { - return principalAnyone; - } - - /** - * Sets the value of the principalAnyone property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrincipalAnyone(String value) { - this.principalAnyone = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeContainer.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeContainer.java deleted file mode 100644 index 1c7258fb96..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeContainer.java +++ /dev/null @@ -1,157 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisTypeContainer complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeContainer">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="type" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType"/>
- *         <element name="children" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisTypeContainer" maxOccurs="unbounded" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeContainer", propOrder = { - "type", - "children", - "any" -}) -public class CmisTypeContainer { - - @XmlElement(required = true) - protected CmisTypeDefinitionType type; - protected List children; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link CmisTypeDefinitionType } - * - */ - public CmisTypeDefinitionType getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link CmisTypeDefinitionType } - * - */ - public void setType(CmisTypeDefinitionType value) { - this.type = value; - } - - /** - * Gets the value of the children property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the children property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getChildren().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisTypeContainer } - * - * - */ - public List getChildren() { - if (children == null) { - children = new ArrayList(); - } - return this.children; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionListType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionListType.java deleted file mode 100644 index daf3264926..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionListType.java +++ /dev/null @@ -1,175 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisTypeDefinitionListType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeDefinitionListType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="types" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="hasMoreItems" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="numItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeDefinitionListType", propOrder = { - "types", - "hasMoreItems", - "numItems", - "any" -}) -public class CmisTypeDefinitionListType { - - protected List types; - protected boolean hasMoreItems; - protected BigInteger numItems; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the types property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the types property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getTypes().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisTypeDefinitionType } - * - * - */ - public List getTypes() { - if (types == null) { - types = new ArrayList(); - } - return this.types; - } - - /** - * Gets the value of the hasMoreItems property. - * - */ - public boolean isHasMoreItems() { - return hasMoreItems; - } - - /** - * Sets the value of the hasMoreItems property. - * - */ - public void setHasMoreItems(boolean value) { - this.hasMoreItems = value; - } - - /** - * Gets the value of the numItems property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getNumItems() { - return numItems; - } - - /** - * Sets the value of the numItems property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setNumItems(BigInteger value) { - this.numItems = value; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionType.java deleted file mode 100644 index 0a3188bc40..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDefinitionType.java +++ /dev/null @@ -1,519 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - *

Java class for cmisTypeDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeDefinitionType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="localName" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="localNamespace" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
- *         <element name="displayName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="queryName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="baseId" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumBaseObjectTypeIds"/>
- *         <element name="parentId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="creatable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="fileable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="queryable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="fulltextIndexed" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="includedInSupertypeQuery" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="controllablePolicy" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="controllableACL" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <choice maxOccurs="unbounded" minOccurs="0">
- *           <element name="propertyBooleanDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyBooleanDefinitionType"/>
- *           <element name="propertyDateTimeDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDateTimeDefinitionType"/>
- *           <element name="propertyDecimalDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyDecimalDefinitionType"/>
- *           <element name="propertyIdDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyIdDefinitionType"/>
- *           <element name="propertyIntegerDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyIntegerDefinitionType"/>
- *           <element name="propertyHtmlDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyHtmlDefinitionType"/>
- *           <element name="propertyStringDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyStringDefinitionType"/>
- *           <element name="propertyUriDefinition" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertyUriDefinitionType"/>
- *         </choice>
- *         <any/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "id", - "localName", - "localNamespace", - "displayName", - "queryName", - "description", - "baseId", - "parentId", - "creatable", - "fileable", - "queryable", - "fulltextIndexed", - "includedInSupertypeQuery", - "controllablePolicy", - "controllableACL", - "propertyDefinition", - "any" -}) -@XmlSeeAlso({ - CmisTypeFolderDefinitionType.class, - CmisTypeDocumentDefinitionType.class, - CmisTypeRelationshipDefinitionType.class, - CmisTypePolicyDefinitionType.class -}) -public class CmisTypeDefinitionType { - - @XmlElement(required = true) - protected String id; - @XmlElement(required = true) - protected String localName; - @XmlElement(required = true, nillable = true) - @XmlSchemaType(name = "anyURI") - protected String localNamespace; - protected String displayName; - protected String queryName; - protected String description; - @XmlElement(required = true) - protected EnumBaseObjectTypeIds baseId; - protected String parentId; - protected boolean creatable; - protected boolean fileable; - protected boolean queryable; - protected boolean fulltextIndexed; - @XmlElement(defaultValue = "true") - protected boolean includedInSupertypeQuery; - protected boolean controllablePolicy; - protected boolean controllableACL; - @XmlElements({ - @XmlElement(name = "propertyIntegerDefinition", type = CmisPropertyIntegerDefinitionType.class), - @XmlElement(name = "propertyStringDefinition", type = CmisPropertyStringDefinitionType.class), - @XmlElement(name = "propertyDecimalDefinition", type = CmisPropertyDecimalDefinitionType.class), - @XmlElement(name = "propertyDateTimeDefinition", type = CmisPropertyDateTimeDefinitionType.class), - @XmlElement(name = "propertyHtmlDefinition", type = CmisPropertyHtmlDefinitionType.class), - @XmlElement(name = "propertyIdDefinition", type = CmisPropertyIdDefinitionType.class), - @XmlElement(name = "propertyBooleanDefinition", type = CmisPropertyBooleanDefinitionType.class), - @XmlElement(name = "propertyUriDefinition", type = CmisPropertyUriDefinitionType.class) - }) - protected List propertyDefinition; - @XmlAnyElement(lax = true) - protected List any; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the localName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocalName() { - return localName; - } - - /** - * Sets the value of the localName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocalName(String value) { - this.localName = value; - } - - /** - * Gets the value of the localNamespace property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocalNamespace() { - return localNamespace; - } - - /** - * Sets the value of the localNamespace property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocalNamespace(String value) { - this.localNamespace = value; - } - - /** - * Gets the value of the displayName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDisplayName() { - return displayName; - } - - /** - * Sets the value of the displayName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDisplayName(String value) { - this.displayName = value; - } - - /** - * Gets the value of the queryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getQueryName() { - return queryName; - } - - /** - * Sets the value of the queryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setQueryName(String value) { - this.queryName = value; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the baseId property. - * - * @return - * possible object is - * {@link EnumBaseObjectTypeIds } - * - */ - public EnumBaseObjectTypeIds getBaseId() { - return baseId; - } - - /** - * Sets the value of the baseId property. - * - * @param value - * allowed object is - * {@link EnumBaseObjectTypeIds } - * - */ - public void setBaseId(EnumBaseObjectTypeIds value) { - this.baseId = value; - } - - /** - * Gets the value of the parentId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getParentId() { - return parentId; - } - - /** - * Sets the value of the parentId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setParentId(String value) { - this.parentId = value; - } - - /** - * Gets the value of the creatable property. - * - */ - public boolean isCreatable() { - return creatable; - } - - /** - * Sets the value of the creatable property. - * - */ - public void setCreatable(boolean value) { - this.creatable = value; - } - - /** - * Gets the value of the fileable property. - * - */ - public boolean isFileable() { - return fileable; - } - - /** - * Sets the value of the fileable property. - * - */ - public void setFileable(boolean value) { - this.fileable = value; - } - - /** - * Gets the value of the queryable property. - * - */ - public boolean isQueryable() { - return queryable; - } - - /** - * Sets the value of the queryable property. - * - */ - public void setQueryable(boolean value) { - this.queryable = value; - } - - /** - * Gets the value of the fulltextIndexed property. - * - */ - public boolean isFulltextIndexed() { - return fulltextIndexed; - } - - /** - * Sets the value of the fulltextIndexed property. - * - */ - public void setFulltextIndexed(boolean value) { - this.fulltextIndexed = value; - } - - /** - * Gets the value of the includedInSupertypeQuery property. - * - */ - public boolean isIncludedInSupertypeQuery() { - return includedInSupertypeQuery; - } - - /** - * Sets the value of the includedInSupertypeQuery property. - * - */ - public void setIncludedInSupertypeQuery(boolean value) { - this.includedInSupertypeQuery = value; - } - - /** - * Gets the value of the controllablePolicy property. - * - */ - public boolean isControllablePolicy() { - return controllablePolicy; - } - - /** - * Sets the value of the controllablePolicy property. - * - */ - public void setControllablePolicy(boolean value) { - this.controllablePolicy = value; - } - - /** - * Gets the value of the controllableACL property. - * - */ - public boolean isControllableACL() { - return controllableACL; - } - - /** - * Sets the value of the controllableACL property. - * - */ - public void setControllableACL(boolean value) { - this.controllableACL = value; - } - - /** - * Gets the value of the propertyDefinition property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the propertyDefinition property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPropertyDefinition().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisPropertyIntegerDefinitionType } - * {@link CmisPropertyStringDefinitionType } - * {@link CmisPropertyDecimalDefinitionType } - * {@link CmisPropertyDateTimeDefinitionType } - * {@link CmisPropertyHtmlDefinitionType } - * {@link CmisPropertyIdDefinitionType } - * {@link CmisPropertyBooleanDefinitionType } - * {@link CmisPropertyUriDefinitionType } - * - * - */ - public List getPropertyDefinition() { - if (propertyDefinition == null) { - propertyDefinition = new ArrayList(); - } - return this.propertyDefinition; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAny().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDocumentDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDocumentDefinitionType.java deleted file mode 100644 index bd0f19c049..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeDocumentDefinitionType.java +++ /dev/null @@ -1,83 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisTypeDocumentDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeDocumentDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType">
- *       <sequence>
- *         <element name="versionable" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
- *         <element name="contentStreamAllowed" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumContentStreamAllowed"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeDocumentDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "versionable", - "contentStreamAllowed" -}) -public class CmisTypeDocumentDefinitionType - extends CmisTypeDefinitionType -{ - - protected boolean versionable; - @XmlElement(required = true) - protected EnumContentStreamAllowed contentStreamAllowed; - - /** - * Gets the value of the versionable property. - * - */ - public boolean isVersionable() { - return versionable; - } - - /** - * Sets the value of the versionable property. - * - */ - public void setVersionable(boolean value) { - this.versionable = value; - } - - /** - * Gets the value of the contentStreamAllowed property. - * - * @return - * possible object is - * {@link EnumContentStreamAllowed } - * - */ - public EnumContentStreamAllowed getContentStreamAllowed() { - return contentStreamAllowed; - } - - /** - * Sets the value of the contentStreamAllowed property. - * - * @param value - * allowed object is - * {@link EnumContentStreamAllowed } - * - */ - public void setContentStreamAllowed(EnumContentStreamAllowed value) { - this.contentStreamAllowed = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeFolderDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeFolderDefinitionType.java deleted file mode 100644 index 54dd4ccbde..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeFolderDefinitionType.java +++ /dev/null @@ -1,34 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisTypeFolderDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeFolderDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType">
- *       <sequence>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeFolderDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -public class CmisTypeFolderDefinitionType - extends CmisTypeDefinitionType -{ - - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypePolicyDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypePolicyDefinitionType.java deleted file mode 100644 index a6e36898bb..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypePolicyDefinitionType.java +++ /dev/null @@ -1,34 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisTypePolicyDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypePolicyDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType">
- *       <sequence>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypePolicyDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -public class CmisTypePolicyDefinitionType - extends CmisTypeDefinitionType -{ - - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeRelationshipDefinitionType.java b/source/generated/org/alfresco/repo/cmis/ws/CmisTypeRelationshipDefinitionType.java deleted file mode 100644 index 3496b2da31..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CmisTypeRelationshipDefinitionType.java +++ /dev/null @@ -1,101 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for cmisTypeRelationshipDefinitionType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="cmisTypeRelationshipDefinitionType">
- *   <complexContent>
- *     <extension base="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType">
- *       <sequence>
- *         <element name="allowedSourceTypes" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="allowedTargetTypes" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </extension>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "cmisTypeRelationshipDefinitionType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", propOrder = { - "allowedSourceTypes", - "allowedTargetTypes" -}) -public class CmisTypeRelationshipDefinitionType - extends CmisTypeDefinitionType -{ - - protected List allowedSourceTypes; - protected List allowedTargetTypes; - - /** - * Gets the value of the allowedSourceTypes property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the allowedSourceTypes property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAllowedSourceTypes().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getAllowedSourceTypes() { - if (allowedSourceTypes == null) { - allowedSourceTypes = new ArrayList(); - } - return this.allowedSourceTypes; - } - - /** - * Gets the value of the allowedTargetTypes property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the allowedTargetTypes property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAllowedTargetTypes().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getAllowedTargetTypes() { - if (allowedTargetTypes == null) { - allowedTargetTypes = new ArrayList(); - } - return this.allowedTargetTypes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateDocument.java b/source/generated/org/alfresco/repo/cmis/ws/CreateDocument.java deleted file mode 100644 index 4a124822a0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateDocument.java +++ /dev/null @@ -1,297 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="contentStream" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisContentStreamType" minOccurs="0"/>
- *         <element name="versioningState" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumVersioningState" minOccurs="0"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "properties", - "folderId", - "contentStream", - "versioningState", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "createDocument") -public class CreateDocument { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElementRef(name = "folderId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement folderId; - @XmlElementRef(name = "contentStream", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement contentStream; - @XmlElementRef(name = "versioningState", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement versioningState; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFolderId(JAXBElement value) { - this.folderId = ((JAXBElement ) value); - } - - /** - * Gets the value of the contentStream property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >} - * - */ - public JAXBElement getContentStream() { - return contentStream; - } - - /** - * Sets the value of the contentStream property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >} - * - */ - public void setContentStream(JAXBElement value) { - this.contentStream = ((JAXBElement ) value); - } - - /** - * Gets the value of the versioningState property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >} - * - */ - public JAXBElement getVersioningState() { - return versioningState; - } - - /** - * Sets the value of the versioningState property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >} - * - */ - public void setVersioningState(JAXBElement value) { - this.versioningState = ((JAXBElement ) value); - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSource.java b/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSource.java deleted file mode 100644 index d1afb442a9..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSource.java +++ /dev/null @@ -1,297 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="sourceId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="versioningState" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumVersioningState" minOccurs="0"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "sourceId", - "properties", - "folderId", - "versioningState", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "createDocumentFromSource") -public class CreateDocumentFromSource { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String sourceId; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElementRef(name = "folderId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement folderId; - @XmlElementRef(name = "versioningState", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement versioningState; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the sourceId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSourceId() { - return sourceId; - } - - /** - * Sets the value of the sourceId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSourceId(String value) { - this.sourceId = value; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFolderId(JAXBElement value) { - this.folderId = ((JAXBElement ) value); - } - - /** - * Gets the value of the versioningState property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >} - * - */ - public JAXBElement getVersioningState() { - return versioningState; - } - - /** - * Sets the value of the versioningState property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >} - * - */ - public void setVersioningState(JAXBElement value) { - this.versioningState = ((JAXBElement ) value); - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSourceResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSourceResponse.java deleted file mode 100644 index 5fd656fec8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentFromSourceResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "createDocumentFromSourceResponse") -public class CreateDocumentFromSourceResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentResponse.java deleted file mode 100644 index 9db3ac91e1..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateDocumentResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "createDocumentResponse") -public class CreateDocumentResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateFolder.java b/source/generated/org/alfresco/repo/cmis/ws/CreateFolder.java deleted file mode 100644 index cd9e3c985e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateFolder.java +++ /dev/null @@ -1,241 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "properties", - "folderId", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "createFolder") -public class CreateFolder { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElement(required = true) - protected String folderId; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateFolderResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CreateFolderResponse.java deleted file mode 100644 index 2f3ef6b4b3..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateFolderResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "createFolderResponse") -public class CreateFolderResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreatePolicy.java b/source/generated/org/alfresco/repo/cmis/ws/CreatePolicy.java deleted file mode 100644 index a6ea22a9fa..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreatePolicy.java +++ /dev/null @@ -1,241 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "properties", - "folderId", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "createPolicy") -public class CreatePolicy { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElementRef(name = "folderId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement folderId; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFolderId(JAXBElement value) { - this.folderId = ((JAXBElement ) value); - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreatePolicyResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CreatePolicyResponse.java deleted file mode 100644 index c4bfed0208..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreatePolicyResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "createPolicyResponse") -public class CreatePolicyResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateRelationship.java b/source/generated/org/alfresco/repo/cmis/ws/CreateRelationship.java deleted file mode 100644 index 307f98c3b4..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateRelationship.java +++ /dev/null @@ -1,213 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="policies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="addACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="removeACEs" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAccessControlListType" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "properties", - "policies", - "addACEs", - "removeACEs", - "extension" -}) -@XmlRootElement(name = "createRelationship") -public class CreateRelationship { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElement(nillable = true) - protected List policies; - @XmlElementRef(name = "addACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement addACEs; - @XmlElementRef(name = "removeACEs", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement removeACEs; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the policies property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the policies property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getPolicies().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getPolicies() { - if (policies == null) { - policies = new ArrayList(); - } - return this.policies; - } - - /** - * Gets the value of the addACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getAddACEs() { - return addACEs; - } - - /** - * Sets the value of the addACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setAddACEs(JAXBElement value) { - this.addACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the removeACEs property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public JAXBElement getRemoveACEs() { - return removeACEs; - } - - /** - * Sets the value of the removeACEs property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >} - * - */ - public void setRemoveACEs(JAXBElement value) { - this.removeACEs = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/CreateRelationshipResponse.java b/source/generated/org/alfresco/repo/cmis/ws/CreateRelationshipResponse.java deleted file mode 100644 index 4bd3e5b0f0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/CreateRelationshipResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "createRelationshipResponse") -public class CreateRelationshipResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStream.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStream.java deleted file mode 100644 index 03e46ed966..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStream.java +++ /dev/null @@ -1,149 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "changeToken", - "extension" -}) -@XmlRootElement(name = "deleteContentStream") -public class DeleteContentStream { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - protected String changeToken; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setChangeToken(String value) { - this.changeToken = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStreamResponse.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStreamResponse.java deleted file mode 100644 index e402ed446f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteContentStreamResponse.java +++ /dev/null @@ -1,121 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "changeToken", - "extension" -}) -@XmlRootElement(name = "deleteContentStreamResponse") -public class DeleteContentStreamResponse { - - @XmlElement(required = true) - protected String objectId; - protected String changeToken; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setChangeToken(String value) { - this.changeToken = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteObject.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteObject.java deleted file mode 100644 index aa3249323d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteObject.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="allVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "allVersions", - "extension" -}) -@XmlRootElement(name = "deleteObject") -public class DeleteObject { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "allVersions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement allVersions; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the allVersions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getAllVersions() { - return allVersions; - } - - /** - * Sets the value of the allVersions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setAllVersions(JAXBElement value) { - this.allVersions = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteObjectResponse.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteObjectResponse.java deleted file mode 100644 index fa394858f0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteObjectResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "deleteObjectResponse") -public class DeleteObjectResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteTree.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteTree.java deleted file mode 100644 index 6360022f25..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteTree.java +++ /dev/null @@ -1,206 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="allVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="unfileObjects" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumUnfileObject" minOccurs="0"/>
- *         <element name="continueOnFailure" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "allVersions", - "unfileObjects", - "continueOnFailure", - "extension" -}) -@XmlRootElement(name = "deleteTree") -public class DeleteTree { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String folderId; - @XmlElementRef(name = "allVersions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement allVersions; - @XmlElementRef(name = "unfileObjects", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement unfileObjects; - @XmlElementRef(name = "continueOnFailure", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement continueOnFailure; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the allVersions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getAllVersions() { - return allVersions; - } - - /** - * Sets the value of the allVersions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setAllVersions(JAXBElement value) { - this.allVersions = ((JAXBElement ) value); - } - - /** - * Gets the value of the unfileObjects property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumUnfileObject }{@code >} - * - */ - public JAXBElement getUnfileObjects() { - return unfileObjects; - } - - /** - * Sets the value of the unfileObjects property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumUnfileObject }{@code >} - * - */ - public void setUnfileObjects(JAXBElement value) { - this.unfileObjects = ((JAXBElement ) value); - } - - /** - * Gets the value of the continueOnFailure property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getContinueOnFailure() { - return continueOnFailure; - } - - /** - * Sets the value of the continueOnFailure property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setContinueOnFailure(JAXBElement value) { - this.continueOnFailure = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DeleteTreeResponse.java b/source/generated/org/alfresco/repo/cmis/ws/DeleteTreeResponse.java deleted file mode 100644 index 70990979e6..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DeleteTreeResponse.java +++ /dev/null @@ -1,172 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="failedToDelete">
- *           <complexType>
- *             <complexContent>
- *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *                 <sequence>
- *                   <element name="objectIds" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *                   <any/>
- *                 </sequence>
- *               </restriction>
- *             </complexContent>
- *           </complexType>
- *         </element>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "failedToDelete" -}) -@XmlRootElement(name = "deleteTreeResponse") -public class DeleteTreeResponse { - - @XmlElement(required = true) - protected DeleteTreeResponse.FailedToDelete failedToDelete; - - /** - * Gets the value of the failedToDelete property. - * - * @return - * possible object is - * {@link DeleteTreeResponse.FailedToDelete } - * - */ - public DeleteTreeResponse.FailedToDelete getFailedToDelete() { - return failedToDelete; - } - - /** - * Sets the value of the failedToDelete property. - * - * @param value - * allowed object is - * {@link DeleteTreeResponse.FailedToDelete } - * - */ - public void setFailedToDelete(DeleteTreeResponse.FailedToDelete value) { - this.failedToDelete = value; - } - - - /** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

-     * <complexType>
-     *   <complexContent>
-     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
-     *       <sequence>
-     *         <element name="objectIds" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
-     *         <any/>
-     *       </sequence>
-     *     </restriction>
-     *   </complexContent>
-     * </complexType>
-     * 
- * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "objectIds", - "any" - }) - public static class FailedToDelete { - - protected List objectIds; - @XmlAnyElement(lax = true) - protected List any; - - /** - * Gets the value of the objectIds property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objectIds property. - * - *

- * For example, to add a new item, do as follows: - *

-         *    getObjectIds().add(newItem);
-         * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getObjectIds() { - if (objectIds == null) { - objectIds = new ArrayList(); - } - return this.objectIds; - } - - /** - * Gets the value of the any property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the any property. - * - *

- * For example, to add a new item, do as follows: - *

-         *    getAny().add(newItem);
-         * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List getAny() { - if (any == null) { - any = new ArrayList(); - } - return this.any; - } - - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DiscoveryService.java b/source/generated/org/alfresco/repo/cmis/ws/DiscoveryService.java deleted file mode 100644 index 9cd69b2ea4..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DiscoveryService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "DiscoveryService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class DiscoveryService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "DiscoveryService"); - public final static QName DiscoveryServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "DiscoveryServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public DiscoveryService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public DiscoveryService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public DiscoveryService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns DiscoveryServicePort - */ - @WebEndpoint(name = "DiscoveryServicePort") - public DiscoveryServicePort getDiscoveryServicePort() { - return super.getPort(DiscoveryServicePort, DiscoveryServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns DiscoveryServicePort - */ - @WebEndpoint(name = "DiscoveryServicePort") - public DiscoveryServicePort getDiscoveryServicePort(WebServiceFeature... features) { - return super.getPort(DiscoveryServicePort, DiscoveryServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/DiscoveryServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/DiscoveryServicePort.java deleted file mode 100644 index 5166ca35fe..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/DiscoveryServicePort.java +++ /dev/null @@ -1,56 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebParam.Mode; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.jws.soap.SOAPBinding; -import javax.jws.soap.SOAPBinding.ParameterStyle; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "DiscoveryServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface DiscoveryServicePort { - - @RequestWrapper(localName = "getContentChanges", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetContentChanges") - @ResponseWrapper(localName = "getContentChangesResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetContentChangesResponse") - @WebMethod - public void getContentChanges( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "changeLogToken", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder changeLogToken, - @WebParam(name = "includeProperties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeProperties, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includePolicyIds", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePolicyIds, - @WebParam(name = "includeACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeACL, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objects - ) throws CmisException; - - @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) - @WebResult(name = "queryResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", partName = "parameters") - @WebMethod - public QueryResponse query( - @WebParam(partName = "parameters", name = "query", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - Query parameters - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumACLPropagation.java b/source/generated/org/alfresco/repo/cmis/ws/EnumACLPropagation.java deleted file mode 100644 index 6f9804a4f8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumACLPropagation.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumACLPropagation. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumACLPropagation">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="repositorydetermined"/>
- *     <enumeration value="objectonly"/>
- *     <enumeration value="propagate"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumACLPropagation", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumACLPropagation { - - @XmlEnumValue("repositorydetermined") - REPOSITORYDETERMINED("repositorydetermined"), - @XmlEnumValue("objectonly") - OBJECTONLY("objectonly"), - @XmlEnumValue("propagate") - PROPAGATE("propagate"); - private final String value; - - EnumACLPropagation(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumACLPropagation fromValue(String v) { - for (EnumACLPropagation c: EnumACLPropagation.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumAllowableActionsKey.java b/source/generated/org/alfresco/repo/cmis/ws/EnumAllowableActionsKey.java deleted file mode 100644 index 303f4f1129..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumAllowableActionsKey.java +++ /dev/null @@ -1,147 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumAllowableActionsKey. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumAllowableActionsKey">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="canGetDescendents.Folder"/>
- *     <enumeration value="canGetChildren.Folder"/>
- *     <enumeration value="canGetParents.Folder"/>
- *     <enumeration value="canGetFolderParent.Object"/>
- *     <enumeration value="canCreateDocument.Folder"/>
- *     <enumeration value="canCreateFolder.Folder"/>
- *     <enumeration value="canCreateRelationship.Source"/>
- *     <enumeration value="canCreateRelationship.Target"/>
- *     <enumeration value="canGetProperties.Object"/>
- *     <enumeration value="canViewContent.Object"/>
- *     <enumeration value="canUpdateProperties.Object"/>
- *     <enumeration value="canMove.Object"/>
- *     <enumeration value="canMove.Target"/>
- *     <enumeration value="canMove.Source"/>
- *     <enumeration value="canDelete.Object"/>
- *     <enumeration value="canDeleteTree.Folder"/>
- *     <enumeration value="canSetContent.Document"/>
- *     <enumeration value="canDeleteContent.Document"/>
- *     <enumeration value="canAddToFolder.Object"/>
- *     <enumeration value="canAddToFolder.Folder"/>
- *     <enumeration value="canRemoveFromFolder.Object"/>
- *     <enumeration value="canRemoveFromFolder.Folder"/>
- *     <enumeration value="canCheckout.Document"/>
- *     <enumeration value="canCancelCheckout.Document"/>
- *     <enumeration value="canCheckin.Document"/>
- *     <enumeration value="canGetAllVersions.VersionSeries"/>
- *     <enumeration value="canGetObjectRelationships.Object"/>
- *     <enumeration value="canAddPolicy.Object"/>
- *     <enumeration value="canAddPolicy.Policy"/>
- *     <enumeration value="canRemovePolicy.Object"/>
- *     <enumeration value="canRemovePolicy.Policy"/>
- *     <enumeration value="canGetAppliedPolicies.Object"/>
- *     <enumeration value="canGetACL.Object"/>
- *     <enumeration value="canApplyACL.Object"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumAllowableActionsKey", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumAllowableActionsKey { - - @XmlEnumValue("canGetDescendents.Folder") - CAN_GET_DESCENDENTS_FOLDER("canGetDescendents.Folder"), - @XmlEnumValue("canGetChildren.Folder") - CAN_GET_CHILDREN_FOLDER("canGetChildren.Folder"), - @XmlEnumValue("canGetParents.Folder") - CAN_GET_PARENTS_FOLDER("canGetParents.Folder"), - @XmlEnumValue("canGetFolderParent.Object") - CAN_GET_FOLDER_PARENT_OBJECT("canGetFolderParent.Object"), - @XmlEnumValue("canCreateDocument.Folder") - CAN_CREATE_DOCUMENT_FOLDER("canCreateDocument.Folder"), - @XmlEnumValue("canCreateFolder.Folder") - CAN_CREATE_FOLDER_FOLDER("canCreateFolder.Folder"), - @XmlEnumValue("canCreateRelationship.Source") - CAN_CREATE_RELATIONSHIP_SOURCE("canCreateRelationship.Source"), - @XmlEnumValue("canCreateRelationship.Target") - CAN_CREATE_RELATIONSHIP_TARGET("canCreateRelationship.Target"), - @XmlEnumValue("canGetProperties.Object") - CAN_GET_PROPERTIES_OBJECT("canGetProperties.Object"), - @XmlEnumValue("canViewContent.Object") - CAN_VIEW_CONTENT_OBJECT("canViewContent.Object"), - @XmlEnumValue("canUpdateProperties.Object") - CAN_UPDATE_PROPERTIES_OBJECT("canUpdateProperties.Object"), - @XmlEnumValue("canMove.Object") - CAN_MOVE_OBJECT("canMove.Object"), - @XmlEnumValue("canMove.Target") - CAN_MOVE_TARGET("canMove.Target"), - @XmlEnumValue("canMove.Source") - CAN_MOVE_SOURCE("canMove.Source"), - @XmlEnumValue("canDelete.Object") - CAN_DELETE_OBJECT("canDelete.Object"), - @XmlEnumValue("canDeleteTree.Folder") - CAN_DELETE_TREE_FOLDER("canDeleteTree.Folder"), - @XmlEnumValue("canSetContent.Document") - CAN_SET_CONTENT_DOCUMENT("canSetContent.Document"), - @XmlEnumValue("canDeleteContent.Document") - CAN_DELETE_CONTENT_DOCUMENT("canDeleteContent.Document"), - @XmlEnumValue("canAddToFolder.Object") - CAN_ADD_TO_FOLDER_OBJECT("canAddToFolder.Object"), - @XmlEnumValue("canAddToFolder.Folder") - CAN_ADD_TO_FOLDER_FOLDER("canAddToFolder.Folder"), - @XmlEnumValue("canRemoveFromFolder.Object") - CAN_REMOVE_FROM_FOLDER_OBJECT("canRemoveFromFolder.Object"), - @XmlEnumValue("canRemoveFromFolder.Folder") - CAN_REMOVE_FROM_FOLDER_FOLDER("canRemoveFromFolder.Folder"), - @XmlEnumValue("canCheckout.Document") - CAN_CHECKOUT_DOCUMENT("canCheckout.Document"), - @XmlEnumValue("canCancelCheckout.Document") - CAN_CANCEL_CHECKOUT_DOCUMENT("canCancelCheckout.Document"), - @XmlEnumValue("canCheckin.Document") - CAN_CHECKIN_DOCUMENT("canCheckin.Document"), - @XmlEnumValue("canGetAllVersions.VersionSeries") - CAN_GET_ALL_VERSIONS_VERSION_SERIES("canGetAllVersions.VersionSeries"), - @XmlEnumValue("canGetObjectRelationships.Object") - CAN_GET_OBJECT_RELATIONSHIPS_OBJECT("canGetObjectRelationships.Object"), - @XmlEnumValue("canAddPolicy.Object") - CAN_ADD_POLICY_OBJECT("canAddPolicy.Object"), - @XmlEnumValue("canAddPolicy.Policy") - CAN_ADD_POLICY_POLICY("canAddPolicy.Policy"), - @XmlEnumValue("canRemovePolicy.Object") - CAN_REMOVE_POLICY_OBJECT("canRemovePolicy.Object"), - @XmlEnumValue("canRemovePolicy.Policy") - CAN_REMOVE_POLICY_POLICY("canRemovePolicy.Policy"), - @XmlEnumValue("canGetAppliedPolicies.Object") - CAN_GET_APPLIED_POLICIES_OBJECT("canGetAppliedPolicies.Object"), - @XmlEnumValue("canGetACL.Object") - CAN_GET_ACL_OBJECT("canGetACL.Object"), - @XmlEnumValue("canApplyACL.Object") - CAN_APPLY_ACL_OBJECT("canApplyACL.Object"); - private final String value; - - EnumAllowableActionsKey(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumAllowableActionsKey fromValue(String v) { - for (EnumAllowableActionsKey c: EnumAllowableActionsKey.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumBaseObjectTypeIds.java b/source/generated/org/alfresco/repo/cmis/ws/EnumBaseObjectTypeIds.java deleted file mode 100644 index 0859d4e60f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumBaseObjectTypeIds.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumBaseObjectTypeIds. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumBaseObjectTypeIds">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:document"/>
- *     <enumeration value="cmis:folder"/>
- *     <enumeration value="cmis:relationship"/>
- *     <enumeration value="cmis:policy"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumBaseObjectTypeIds", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumBaseObjectTypeIds { - - @XmlEnumValue("cmis:document") - CMIS_DOCUMENT("cmis:document"), - @XmlEnumValue("cmis:folder") - CMIS_FOLDER("cmis:folder"), - @XmlEnumValue("cmis:relationship") - CMIS_RELATIONSHIP("cmis:relationship"), - @XmlEnumValue("cmis:policy") - CMIS_POLICY("cmis:policy"); - private final String value; - - EnumBaseObjectTypeIds(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumBaseObjectTypeIds fromValue(String v) { - for (EnumBaseObjectTypeIds c: EnumBaseObjectTypeIds.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumBasicPermissions.java b/source/generated/org/alfresco/repo/cmis/ws/EnumBasicPermissions.java deleted file mode 100644 index 14169bc084..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumBasicPermissions.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumBasicPermissions. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumBasicPermissions">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:read"/>
- *     <enumeration value="cmis:write"/>
- *     <enumeration value="cmis:all"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumBasicPermissions", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumBasicPermissions { - - @XmlEnumValue("cmis:read") - CMIS_READ("cmis:read"), - @XmlEnumValue("cmis:write") - CMIS_WRITE("cmis:write"), - @XmlEnumValue("cmis:all") - CMIS_ALL("cmis:all"); - private final String value; - - EnumBasicPermissions(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumBasicPermissions fromValue(String v) { - for (EnumBasicPermissions c: EnumBasicPermissions.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityACL.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityACL.java deleted file mode 100644 index 4433712a06..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityACL.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityACL. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityACL">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="discover"/>
- *     <enumeration value="manage"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityACL", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityACL { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("discover") - DISCOVER("discover"), - @XmlEnumValue("manage") - MANAGE("manage"); - private final String value; - - EnumCapabilityACL(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityACL fromValue(String v) { - for (EnumCapabilityACL c: EnumCapabilityACL.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityChanges.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityChanges.java deleted file mode 100644 index 1d0c7e430d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityChanges.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityChanges. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityChanges">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="objectidsonly"/>
- *     <enumeration value="properties"/>
- *     <enumeration value="all"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityChanges", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityChanges { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("objectidsonly") - OBJECTIDSONLY("objectidsonly"), - @XmlEnumValue("properties") - PROPERTIES("properties"), - @XmlEnumValue("all") - ALL("all"); - private final String value; - - EnumCapabilityChanges(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityChanges fromValue(String v) { - for (EnumCapabilityChanges c: EnumCapabilityChanges.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityContentStreamUpdates.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityContentStreamUpdates.java deleted file mode 100644 index 9b03dc2a53..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityContentStreamUpdates.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityContentStreamUpdates. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityContentStreamUpdates">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="anytime"/>
- *     <enumeration value="pwconly"/>
- *     <enumeration value="none"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityContentStreamUpdates", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityContentStreamUpdates { - - @XmlEnumValue("anytime") - ANYTIME("anytime"), - @XmlEnumValue("pwconly") - PWCONLY("pwconly"), - @XmlEnumValue("none") - NONE("none"); - private final String value; - - EnumCapabilityContentStreamUpdates(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityContentStreamUpdates fromValue(String v) { - for (EnumCapabilityContentStreamUpdates c: EnumCapabilityContentStreamUpdates.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityJoin.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityJoin.java deleted file mode 100644 index 36b4213314..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityJoin.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityJoin. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityJoin">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="inneronly"/>
- *     <enumeration value="innerandouter"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityJoin", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityJoin { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("inneronly") - INNERONLY("inneronly"), - @XmlEnumValue("innerandouter") - INNERANDOUTER("innerandouter"); - private final String value; - - EnumCapabilityJoin(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityJoin fromValue(String v) { - for (EnumCapabilityJoin c: EnumCapabilityJoin.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityQuery.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityQuery.java deleted file mode 100644 index 85a39b4ece..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityQuery.java +++ /dev/null @@ -1,60 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityQuery. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityQuery">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="metadataonly"/>
- *     <enumeration value="fulltextonly"/>
- *     <enumeration value="bothseparate"/>
- *     <enumeration value="bothcombined"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityQuery", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityQuery { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("metadataonly") - METADATAONLY("metadataonly"), - @XmlEnumValue("fulltextonly") - FULLTEXTONLY("fulltextonly"), - @XmlEnumValue("bothseparate") - BOTHSEPARATE("bothseparate"), - @XmlEnumValue("bothcombined") - BOTHCOMBINED("bothcombined"); - private final String value; - - EnumCapabilityQuery(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityQuery fromValue(String v) { - for (EnumCapabilityQuery c: EnumCapabilityQuery.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityRendition.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityRendition.java deleted file mode 100644 index 698da9e1a0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCapabilityRendition.java +++ /dev/null @@ -1,51 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCapabilityRendition. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCapabilityRendition">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="read"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCapabilityRendition", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCapabilityRendition { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("read") - READ("read"); - private final String value; - - EnumCapabilityRendition(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCapabilityRendition fromValue(String v) { - for (EnumCapabilityRendition c: EnumCapabilityRendition.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumCardinality.java b/source/generated/org/alfresco/repo/cmis/ws/EnumCardinality.java deleted file mode 100644 index 4475a93757..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumCardinality.java +++ /dev/null @@ -1,51 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumCardinality. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumCardinality">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="single"/>
- *     <enumeration value="multi"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumCardinality", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumCardinality { - - @XmlEnumValue("single") - SINGLE("single"), - @XmlEnumValue("multi") - MULTI("multi"); - private final String value; - - EnumCardinality(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumCardinality fromValue(String v) { - for (EnumCardinality c: EnumCardinality.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumContentStreamAllowed.java b/source/generated/org/alfresco/repo/cmis/ws/EnumContentStreamAllowed.java deleted file mode 100644 index 065aacb992..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumContentStreamAllowed.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumContentStreamAllowed. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumContentStreamAllowed">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="notallowed"/>
- *     <enumeration value="allowed"/>
- *     <enumeration value="required"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumContentStreamAllowed", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumContentStreamAllowed { - - @XmlEnumValue("notallowed") - NOTALLOWED("notallowed"), - @XmlEnumValue("allowed") - ALLOWED("allowed"), - @XmlEnumValue("required") - REQUIRED("required"); - private final String value; - - EnumContentStreamAllowed(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumContentStreamAllowed fromValue(String v) { - for (EnumContentStreamAllowed c: EnumContentStreamAllowed.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumDateTimeResolution.java b/source/generated/org/alfresco/repo/cmis/ws/EnumDateTimeResolution.java deleted file mode 100644 index c2c4b18d49..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumDateTimeResolution.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumDateTimeResolution. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumDateTimeResolution">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="year"/>
- *     <enumeration value="date"/>
- *     <enumeration value="time"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumDateTimeResolution", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumDateTimeResolution { - - @XmlEnumValue("year") - YEAR("year"), - @XmlEnumValue("date") - DATE("date"), - @XmlEnumValue("time") - TIME("time"); - private final String value; - - EnumDateTimeResolution(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumDateTimeResolution fromValue(String v) { - for (EnumDateTimeResolution c: EnumDateTimeResolution.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumIncludeRelationships.java b/source/generated/org/alfresco/repo/cmis/ws/EnumIncludeRelationships.java deleted file mode 100644 index 1b0a7cd195..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumIncludeRelationships.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumIncludeRelationships. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumIncludeRelationships">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="source"/>
- *     <enumeration value="target"/>
- *     <enumeration value="both"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumIncludeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumIncludeRelationships { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("source") - SOURCE("source"), - @XmlEnumValue("target") - TARGET("target"), - @XmlEnumValue("both") - BOTH("both"); - private final String value; - - EnumIncludeRelationships(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumIncludeRelationships fromValue(String v) { - for (EnumIncludeRelationships c: EnumIncludeRelationships.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesBase.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesBase.java deleted file mode 100644 index 46678a3f13..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesBase.java +++ /dev/null @@ -1,72 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertiesBase. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertiesBase">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:name"/>
- *     <enumeration value="cmis:objectId"/>
- *     <enumeration value="cmis:objectTypeId"/>
- *     <enumeration value="cmis:baseTypeId"/>
- *     <enumeration value="cmis:createdBy"/>
- *     <enumeration value="cmis:creationDate"/>
- *     <enumeration value="cmis:lastModifiedBy"/>
- *     <enumeration value="cmis:lastModificationDate"/>
- *     <enumeration value="cmis:changeToken"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertiesBase", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertiesBase { - - @XmlEnumValue("cmis:name") - CMIS_NAME("cmis:name"), - @XmlEnumValue("cmis:objectId") - CMIS_OBJECT_ID("cmis:objectId"), - @XmlEnumValue("cmis:objectTypeId") - CMIS_OBJECT_TYPE_ID("cmis:objectTypeId"), - @XmlEnumValue("cmis:baseTypeId") - CMIS_BASE_TYPE_ID("cmis:baseTypeId"), - @XmlEnumValue("cmis:createdBy") - CMIS_CREATED_BY("cmis:createdBy"), - @XmlEnumValue("cmis:creationDate") - CMIS_CREATION_DATE("cmis:creationDate"), - @XmlEnumValue("cmis:lastModifiedBy") - CMIS_LAST_MODIFIED_BY("cmis:lastModifiedBy"), - @XmlEnumValue("cmis:lastModificationDate") - CMIS_LAST_MODIFICATION_DATE("cmis:lastModificationDate"), - @XmlEnumValue("cmis:changeToken") - CMIS_CHANGE_TOKEN("cmis:changeToken"); - private final String value; - - EnumPropertiesBase(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertiesBase fromValue(String v) { - for (EnumPropertiesBase c: EnumPropertiesBase.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesDocument.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesDocument.java deleted file mode 100644 index 1cd76da4d1..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesDocument.java +++ /dev/null @@ -1,87 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertiesDocument. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertiesDocument">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:isImmutable"/>
- *     <enumeration value="cmis:isLatestVersion"/>
- *     <enumeration value="cmis:isMajorVersion"/>
- *     <enumeration value="cmis:isLatestMajorVersion"/>
- *     <enumeration value="cmis:versionLabel"/>
- *     <enumeration value="cmis:versionSeriesId"/>
- *     <enumeration value="cmis:isVersionSeriesCheckedOut"/>
- *     <enumeration value="cmis:versionSeriesCheckedOutBy"/>
- *     <enumeration value="cmis:versionSeriesCheckedOutId"/>
- *     <enumeration value="cmis:checkinComment"/>
- *     <enumeration value="cmis:contentStreamLength"/>
- *     <enumeration value="cmis:contentStreamMimeType"/>
- *     <enumeration value="cmis:contentStreamFileName"/>
- *     <enumeration value="cmis:contentStreamId"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertiesDocument", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertiesDocument { - - @XmlEnumValue("cmis:isImmutable") - CMIS_IS_IMMUTABLE("cmis:isImmutable"), - @XmlEnumValue("cmis:isLatestVersion") - CMIS_IS_LATEST_VERSION("cmis:isLatestVersion"), - @XmlEnumValue("cmis:isMajorVersion") - CMIS_IS_MAJOR_VERSION("cmis:isMajorVersion"), - @XmlEnumValue("cmis:isLatestMajorVersion") - CMIS_IS_LATEST_MAJOR_VERSION("cmis:isLatestMajorVersion"), - @XmlEnumValue("cmis:versionLabel") - CMIS_VERSION_LABEL("cmis:versionLabel"), - @XmlEnumValue("cmis:versionSeriesId") - CMIS_VERSION_SERIES_ID("cmis:versionSeriesId"), - @XmlEnumValue("cmis:isVersionSeriesCheckedOut") - CMIS_IS_VERSION_SERIES_CHECKED_OUT("cmis:isVersionSeriesCheckedOut"), - @XmlEnumValue("cmis:versionSeriesCheckedOutBy") - CMIS_VERSION_SERIES_CHECKED_OUT_BY("cmis:versionSeriesCheckedOutBy"), - @XmlEnumValue("cmis:versionSeriesCheckedOutId") - CMIS_VERSION_SERIES_CHECKED_OUT_ID("cmis:versionSeriesCheckedOutId"), - @XmlEnumValue("cmis:checkinComment") - CMIS_CHECKIN_COMMENT("cmis:checkinComment"), - @XmlEnumValue("cmis:contentStreamLength") - CMIS_CONTENT_STREAM_LENGTH("cmis:contentStreamLength"), - @XmlEnumValue("cmis:contentStreamMimeType") - CMIS_CONTENT_STREAM_MIME_TYPE("cmis:contentStreamMimeType"), - @XmlEnumValue("cmis:contentStreamFileName") - CMIS_CONTENT_STREAM_FILE_NAME("cmis:contentStreamFileName"), - @XmlEnumValue("cmis:contentStreamId") - CMIS_CONTENT_STREAM_ID("cmis:contentStreamId"); - private final String value; - - EnumPropertiesDocument(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertiesDocument fromValue(String v) { - for (EnumPropertiesDocument c: EnumPropertiesDocument.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesFolder.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesFolder.java deleted file mode 100644 index 03ed2c086d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesFolder.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertiesFolder. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertiesFolder">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:parentId"/>
- *     <enumeration value="cmis:allowedChildObjectTypeIds"/>
- *     <enumeration value="cmis:path"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertiesFolder", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertiesFolder { - - @XmlEnumValue("cmis:parentId") - CMIS_PARENT_ID("cmis:parentId"), - @XmlEnumValue("cmis:allowedChildObjectTypeIds") - CMIS_ALLOWED_CHILD_OBJECT_TYPE_IDS("cmis:allowedChildObjectTypeIds"), - @XmlEnumValue("cmis:path") - CMIS_PATH("cmis:path"); - private final String value; - - EnumPropertiesFolder(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertiesFolder fromValue(String v) { - for (EnumPropertiesFolder c: EnumPropertiesFolder.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesPolicy.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesPolicy.java deleted file mode 100644 index 25890e1ef4..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesPolicy.java +++ /dev/null @@ -1,48 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertiesPolicy. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertiesPolicy">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:policyText"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertiesPolicy", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertiesPolicy { - - @XmlEnumValue("cmis:policyText") - CMIS_POLICY_TEXT("cmis:policyText"); - private final String value; - - EnumPropertiesPolicy(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertiesPolicy fromValue(String v) { - for (EnumPropertiesPolicy c: EnumPropertiesPolicy.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesRelationship.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesRelationship.java deleted file mode 100644 index 0e24170701..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertiesRelationship.java +++ /dev/null @@ -1,51 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertiesRelationship. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertiesRelationship">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:sourceId"/>
- *     <enumeration value="cmis:targetId"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertiesRelationship", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertiesRelationship { - - @XmlEnumValue("cmis:sourceId") - CMIS_SOURCE_ID("cmis:sourceId"), - @XmlEnumValue("cmis:targetId") - CMIS_TARGET_ID("cmis:targetId"); - private final String value; - - EnumPropertiesRelationship(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertiesRelationship fromValue(String v) { - for (EnumPropertiesRelationship c: EnumPropertiesRelationship.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertyType.java b/source/generated/org/alfresco/repo/cmis/ws/EnumPropertyType.java deleted file mode 100644 index aa46df496f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumPropertyType.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumPropertyType. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumPropertyType">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="boolean"/>
- *     <enumeration value="id"/>
- *     <enumeration value="integer"/>
- *     <enumeration value="datetime"/>
- *     <enumeration value="decimal"/>
- *     <enumeration value="html"/>
- *     <enumeration value="string"/>
- *     <enumeration value="uri"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumPropertyType", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumPropertyType { - - @XmlEnumValue("boolean") - BOOLEAN("boolean"), - @XmlEnumValue("id") - ID("id"), - @XmlEnumValue("integer") - INTEGER("integer"), - @XmlEnumValue("datetime") - DATETIME("datetime"), - @XmlEnumValue("decimal") - DECIMAL("decimal"), - @XmlEnumValue("html") - HTML("html"), - @XmlEnumValue("string") - STRING("string"), - @XmlEnumValue("uri") - URI("uri"); - private final String value; - - EnumPropertyType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumPropertyType fromValue(String v) { - for (EnumPropertyType c: EnumPropertyType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumRelationshipDirection.java b/source/generated/org/alfresco/repo/cmis/ws/EnumRelationshipDirection.java deleted file mode 100644 index 9865004c93..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumRelationshipDirection.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumRelationshipDirection. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumRelationshipDirection">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="source"/>
- *     <enumeration value="target"/>
- *     <enumeration value="either"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumRelationshipDirection", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumRelationshipDirection { - - @XmlEnumValue("source") - SOURCE("source"), - @XmlEnumValue("target") - TARGET("target"), - @XmlEnumValue("either") - EITHER("either"); - private final String value; - - EnumRelationshipDirection(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumRelationshipDirection fromValue(String v) { - for (EnumRelationshipDirection c: EnumRelationshipDirection.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumRenditionKind.java b/source/generated/org/alfresco/repo/cmis/ws/EnumRenditionKind.java deleted file mode 100644 index 5b9f7d57ee..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumRenditionKind.java +++ /dev/null @@ -1,48 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumRenditionKind. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumRenditionKind">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:thumbnail"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumRenditionKind", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumRenditionKind { - - @XmlEnumValue("cmis:thumbnail") - CMIS_THUMBNAIL("cmis:thumbnail"); - private final String value; - - EnumRenditionKind(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumRenditionKind fromValue(String v) { - for (EnumRenditionKind c: EnumRenditionKind.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumServiceException.java b/source/generated/org/alfresco/repo/cmis/ws/EnumServiceException.java deleted file mode 100644 index ed2d0ba77d..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumServiceException.java +++ /dev/null @@ -1,84 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumServiceException. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumServiceException">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="constraint"/>
- *     <enumeration value="nameConstraintViolation"/>
- *     <enumeration value="contentAlreadyExists"/>
- *     <enumeration value="filterNotValid"/>
- *     <enumeration value="invalidArgument"/>
- *     <enumeration value="notSupported"/>
- *     <enumeration value="objectNotFound"/>
- *     <enumeration value="permissionDenied"/>
- *     <enumeration value="runtime"/>
- *     <enumeration value="storage"/>
- *     <enumeration value="streamNotSupported"/>
- *     <enumeration value="updateConflict"/>
- *     <enumeration value="versioning"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumServiceException") -@XmlEnum -public enum EnumServiceException { - - @XmlEnumValue("constraint") - CONSTRAINT("constraint"), - @XmlEnumValue("nameConstraintViolation") - NAME_CONSTRAINT_VIOLATION("nameConstraintViolation"), - @XmlEnumValue("contentAlreadyExists") - CONTENT_ALREADY_EXISTS("contentAlreadyExists"), - @XmlEnumValue("filterNotValid") - FILTER_NOT_VALID("filterNotValid"), - @XmlEnumValue("invalidArgument") - INVALID_ARGUMENT("invalidArgument"), - @XmlEnumValue("notSupported") - NOT_SUPPORTED("notSupported"), - @XmlEnumValue("objectNotFound") - OBJECT_NOT_FOUND("objectNotFound"), - @XmlEnumValue("permissionDenied") - PERMISSION_DENIED("permissionDenied"), - @XmlEnumValue("runtime") - RUNTIME("runtime"), - @XmlEnumValue("storage") - STORAGE("storage"), - @XmlEnumValue("streamNotSupported") - STREAM_NOT_SUPPORTED("streamNotSupported"), - @XmlEnumValue("updateConflict") - UPDATE_CONFLICT("updateConflict"), - @XmlEnumValue("versioning") - VERSIONING("versioning"); - private final String value; - - EnumServiceException(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumServiceException fromValue(String v) { - for (EnumServiceException c: EnumServiceException.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumSupportedPermissions.java b/source/generated/org/alfresco/repo/cmis/ws/EnumSupportedPermissions.java deleted file mode 100644 index 0ba5590895..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumSupportedPermissions.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumSupportedPermissions. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumSupportedPermissions">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="basic"/>
- *     <enumeration value="repository"/>
- *     <enumeration value="both"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumSupportedPermissions", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumSupportedPermissions { - - @XmlEnumValue("basic") - BASIC("basic"), - @XmlEnumValue("repository") - REPOSITORY("repository"), - @XmlEnumValue("both") - BOTH("both"); - private final String value; - - EnumSupportedPermissions(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumSupportedPermissions fromValue(String v) { - for (EnumSupportedPermissions c: EnumSupportedPermissions.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumTypeOfChanges.java b/source/generated/org/alfresco/repo/cmis/ws/EnumTypeOfChanges.java deleted file mode 100644 index e25d98c13e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumTypeOfChanges.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumTypeOfChanges. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumTypeOfChanges">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="created"/>
- *     <enumeration value="updated"/>
- *     <enumeration value="deleted"/>
- *     <enumeration value="security"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumTypeOfChanges", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumTypeOfChanges { - - @XmlEnumValue("created") - CREATED("created"), - @XmlEnumValue("updated") - UPDATED("updated"), - @XmlEnumValue("deleted") - DELETED("deleted"), - @XmlEnumValue("security") - SECURITY("security"); - private final String value; - - EnumTypeOfChanges(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumTypeOfChanges fromValue(String v) { - for (EnumTypeOfChanges c: EnumTypeOfChanges.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumUnfileObject.java b/source/generated/org/alfresco/repo/cmis/ws/EnumUnfileObject.java deleted file mode 100644 index 7ecf2e415e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumUnfileObject.java +++ /dev/null @@ -1,54 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumUnfileObject. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumUnfileObject">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="unfile"/>
- *     <enumeration value="deletesinglefiled"/>
- *     <enumeration value="delete"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumUnfileObject", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumUnfileObject { - - @XmlEnumValue("unfile") - UNFILE("unfile"), - @XmlEnumValue("deletesinglefiled") - DELETESINGLEFILED("deletesinglefiled"), - @XmlEnumValue("delete") - DELETE("delete"); - private final String value; - - EnumUnfileObject(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumUnfileObject fromValue(String v) { - for (EnumUnfileObject c: EnumUnfileObject.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumUpdatability.java b/source/generated/org/alfresco/repo/cmis/ws/EnumUpdatability.java deleted file mode 100644 index 0b72e939c6..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumUpdatability.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumUpdatability. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumUpdatability">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="readonly"/>
- *     <enumeration value="readwrite"/>
- *     <enumeration value="whencheckedout"/>
- *     <enumeration value="oncreate"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumUpdatability", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumUpdatability { - - @XmlEnumValue("readonly") - READONLY("readonly"), - @XmlEnumValue("readwrite") - READWRITE("readwrite"), - @XmlEnumValue("whencheckedout") - WHENCHECKEDOUT("whencheckedout"), - @XmlEnumValue("oncreate") - ONCREATE("oncreate"); - private final String value; - - EnumUpdatability(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumUpdatability fromValue(String v) { - for (EnumUpdatability c: EnumUpdatability.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumUsers.java b/source/generated/org/alfresco/repo/cmis/ws/EnumUsers.java deleted file mode 100644 index 4ae624f5cd..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumUsers.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumUsers. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumUsers">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="cmis:user"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumUsers", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumUsers { - - - /** - * - * This user can be used on setting ACLs to specify - * the permission this - * user context should have. - * - * - */ - @XmlEnumValue("cmis:user") - CMIS_USER("cmis:user"); - private final String value; - - EnumUsers(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumUsers fromValue(String v) { - for (EnumUsers c: EnumUsers.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/EnumVersioningState.java b/source/generated/org/alfresco/repo/cmis/ws/EnumVersioningState.java deleted file mode 100644 index 7d1f58230f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/EnumVersioningState.java +++ /dev/null @@ -1,57 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for enumVersioningState. - * - *

The following schema fragment specifies the expected content contained within this class. - *

- *

- * <simpleType name="enumVersioningState">
- *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     <enumeration value="none"/>
- *     <enumeration value="checkedout"/>
- *     <enumeration value="minor"/>
- *     <enumeration value="major"/>
- *   </restriction>
- * </simpleType>
- * 
- * - */ -@XmlType(name = "enumVersioningState", namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/") -@XmlEnum -public enum EnumVersioningState { - - @XmlEnumValue("none") - NONE("none"), - @XmlEnumValue("checkedout") - CHECKEDOUT("checkedout"), - @XmlEnumValue("minor") - MINOR("minor"), - @XmlEnumValue("major") - MAJOR("major"); - private final String value; - - EnumVersioningState(String v) { - value = v; - } - - public String value() { - return value; - } - - public static EnumVersioningState fromValue(String v) { - for (EnumVersioningState c: EnumVersioningState.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetACL.java b/source/generated/org/alfresco/repo/cmis/ws/GetACL.java deleted file mode 100644 index ec111eefce..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetACL.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="onlyBasicPermissions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "onlyBasicPermissions", - "extension" -}) -@XmlRootElement(name = "getACL") -public class GetACL { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "onlyBasicPermissions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement onlyBasicPermissions; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the onlyBasicPermissions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getOnlyBasicPermissions() { - return onlyBasicPermissions; - } - - /** - * Sets the value of the onlyBasicPermissions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setOnlyBasicPermissions(JAXBElement value) { - this.onlyBasicPermissions = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetACLResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetACLResponse.java deleted file mode 100644 index f6870811ab..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetACLResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="ACL" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisACLType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "acl" -}) -@XmlRootElement(name = "getACLResponse") -public class GetACLResponse { - - @XmlElement(name = "ACL", required = true) - protected CmisACLType acl; - - /** - * Gets the value of the acl property. - * - * @return - * possible object is - * {@link CmisACLType } - * - */ - public CmisACLType getACL() { - return acl; - } - - /** - * Sets the value of the acl property. - * - * @param value - * allowed object is - * {@link CmisACLType } - * - */ - public void setACL(CmisACLType value) { - this.acl = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAllVersions.java b/source/generated/org/alfresco/repo/cmis/ws/GetAllVersions.java deleted file mode 100644 index 11629e01cb..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAllVersions.java +++ /dev/null @@ -1,178 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "filter", - "includeAllowableActions", - "extension" -}) -@XmlRootElement(name = "getAllVersions") -public class GetAllVersions { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAllVersionsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetAllVersionsResponse.java deleted file mode 100644 index 5f4fa47197..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAllVersionsResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getAllVersionsResponse") -public class GetAllVersionsResponse { - - protected List objects; - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActions.java b/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActions.java deleted file mode 100644 index 4f6d3eccec..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActions.java +++ /dev/null @@ -1,122 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "extension" -}) -@XmlRootElement(name = "getAllowableActions") -public class GetAllowableActions { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActionsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActionsResponse.java deleted file mode 100644 index 20feb4d70e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAllowableActionsResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="allowableActions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisAllowableActionsType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "allowableActions" -}) -@XmlRootElement(name = "getAllowableActionsResponse") -public class GetAllowableActionsResponse { - - @XmlElement(required = true) - protected CmisAllowableActionsType allowableActions; - - /** - * Gets the value of the allowableActions property. - * - * @return - * possible object is - * {@link CmisAllowableActionsType } - * - */ - public CmisAllowableActionsType getAllowableActions() { - return allowableActions; - } - - /** - * Sets the value of the allowableActions property. - * - * @param value - * allowed object is - * {@link CmisAllowableActionsType } - * - */ - public void setAllowableActions(CmisAllowableActionsType value) { - this.allowableActions = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPolicies.java b/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPolicies.java deleted file mode 100644 index ee0604897f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPolicies.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "filter", - "extension" -}) -@XmlRootElement(name = "getAppliedPolicies") -public class GetAppliedPolicies { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPoliciesResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPoliciesResponse.java deleted file mode 100644 index dd631fe3df..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetAppliedPoliciesResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getAppliedPoliciesResponse") -public class GetAppliedPoliciesResponse { - - protected List objects; - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocs.java b/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocs.java deleted file mode 100644 index cc953b97dd..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocs.java +++ /dev/null @@ -1,319 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="orderBy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "filter", - "orderBy", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "getCheckedOutDocs") -public class GetCheckedOutDocs { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElementRef(name = "folderId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement folderId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "orderBy", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement orderBy; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFolderId(JAXBElement value) { - this.folderId = ((JAXBElement ) value); - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the orderBy property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getOrderBy() { - return orderBy; - } - - /** - * Sets the value of the orderBy property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setOrderBy(JAXBElement value) { - this.orderBy = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocsResponse.java deleted file mode 100644 index a946a15825..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetCheckedOutDocsResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectListType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getCheckedOutDocsResponse") -public class GetCheckedOutDocsResponse { - - @XmlElement(required = true) - protected CmisObjectListType objects; - - /** - * Gets the value of the objects property. - * - * @return - * possible object is - * {@link CmisObjectListType } - * - */ - public CmisObjectListType getObjects() { - return objects; - } - - /** - * Sets the value of the objects property. - * - * @param value - * allowed object is - * {@link CmisObjectListType } - * - */ - public void setObjects(CmisObjectListType value) { - this.objects = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetChildren.java b/source/generated/org/alfresco/repo/cmis/ws/GetChildren.java deleted file mode 100644 index 5f6dc651b8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetChildren.java +++ /dev/null @@ -1,347 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="orderBy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePathSegment" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "filter", - "orderBy", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePathSegment", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "getChildren") -public class GetChildren { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String folderId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "orderBy", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement orderBy; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePathSegment", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePathSegment; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the orderBy property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getOrderBy() { - return orderBy; - } - - /** - * Sets the value of the orderBy property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setOrderBy(JAXBElement value) { - this.orderBy = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePathSegment property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePathSegment() { - return includePathSegment; - } - - /** - * Sets the value of the includePathSegment property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePathSegment(JAXBElement value) { - this.includePathSegment = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetChildrenResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetChildrenResponse.java deleted file mode 100644 index 9cdf0116b8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetChildrenResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderListType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getChildrenResponse") -public class GetChildrenResponse { - - @XmlElement(required = true) - protected CmisObjectInFolderListType objects; - - /** - * Gets the value of the objects property. - * - * @return - * possible object is - * {@link CmisObjectInFolderListType } - * - */ - public CmisObjectInFolderListType getObjects() { - return objects; - } - - /** - * Sets the value of the objects property. - * - * @param value - * allowed object is - * {@link CmisObjectInFolderListType } - * - */ - public void setObjects(CmisObjectInFolderListType value) { - this.objects = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetContentChanges.java b/source/generated/org/alfresco/repo/cmis/ws/GetContentChanges.java deleted file mode 100644 index 1fcc7e0df5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetContentChanges.java +++ /dev/null @@ -1,263 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeLogToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeProperties" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePolicyIds" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "changeLogToken", - "includeProperties", - "filter", - "includePolicyIds", - "includeACL", - "maxItems", - "extension" -}) -@XmlRootElement(name = "getContentChanges") -public class GetContentChanges { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElementRef(name = "changeLogToken", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement changeLogToken; - @XmlElementRef(name = "includeProperties", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeProperties; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includePolicyIds", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePolicyIds; - @XmlElementRef(name = "includeACL", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeACL; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the changeLogToken property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getChangeLogToken() { - return changeLogToken; - } - - /** - * Sets the value of the changeLogToken property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setChangeLogToken(JAXBElement value) { - this.changeLogToken = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeProperties property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeProperties() { - return includeProperties; - } - - /** - * Sets the value of the includeProperties property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeProperties(JAXBElement value) { - this.includeProperties = ((JAXBElement ) value); - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePolicyIds property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePolicyIds() { - return includePolicyIds; - } - - /** - * Sets the value of the includePolicyIds property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePolicyIds(JAXBElement value) { - this.includePolicyIds = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeACL property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeACL() { - return includeACL; - } - - /** - * Sets the value of the includeACL property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeACL(JAXBElement value) { - this.includeACL = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetContentChangesResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetContentChangesResponse.java deleted file mode 100644 index d8b7e06086..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetContentChangesResponse.java +++ /dev/null @@ -1,92 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectListType"/>
- *         <element name="changeLogToken" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects", - "changeLogToken" -}) -@XmlRootElement(name = "getContentChangesResponse") -public class GetContentChangesResponse { - - @XmlElement(required = true) - protected CmisObjectListType objects; - @XmlElement(required = true) - protected String changeLogToken; - - /** - * Gets the value of the objects property. - * - * @return - * possible object is - * {@link CmisObjectListType } - * - */ - public CmisObjectListType getObjects() { - return objects; - } - - /** - * Sets the value of the objects property. - * - * @param value - * allowed object is - * {@link CmisObjectListType } - * - */ - public void setObjects(CmisObjectListType value) { - this.objects = value; - } - - /** - * Gets the value of the changeLogToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getChangeLogToken() { - return changeLogToken; - } - - /** - * Sets the value of the changeLogToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setChangeLogToken(String value) { - this.changeLogToken = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetContentStream.java b/source/generated/org/alfresco/repo/cmis/ws/GetContentStream.java deleted file mode 100644 index b01223e112..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetContentStream.java +++ /dev/null @@ -1,207 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="streamId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="offset" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="length" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "streamId", - "offset", - "length", - "extension" -}) -@XmlRootElement(name = "getContentStream") -public class GetContentStream { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "streamId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement streamId; - @XmlElementRef(name = "offset", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement offset; - @XmlElementRef(name = "length", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement length; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the streamId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getStreamId() { - return streamId; - } - - /** - * Sets the value of the streamId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setStreamId(JAXBElement value) { - this.streamId = ((JAXBElement ) value); - } - - /** - * Gets the value of the offset property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getOffset() { - return offset; - } - - /** - * Sets the value of the offset property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setOffset(JAXBElement value) { - this.offset = ((JAXBElement ) value); - } - - /** - * Gets the value of the length property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getLength() { - return length; - } - - /** - * Sets the value of the length property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setLength(JAXBElement value) { - this.length = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetContentStreamResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetContentStreamResponse.java deleted file mode 100644 index 4aa726d83a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetContentStreamResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="contentStream" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisContentStreamType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "contentStream" -}) -@XmlRootElement(name = "getContentStreamResponse") -public class GetContentStreamResponse { - - @XmlElement(required = true) - protected CmisContentStreamType contentStream; - - /** - * Gets the value of the contentStream property. - * - * @return - * possible object is - * {@link CmisContentStreamType } - * - */ - public CmisContentStreamType getContentStream() { - return contentStream; - } - - /** - * Sets the value of the contentStream property. - * - * @param value - * allowed object is - * {@link CmisContentStreamType } - * - */ - public void setContentStream(CmisContentStreamType value) { - this.contentStream = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetDescendants.java b/source/generated/org/alfresco/repo/cmis/ws/GetDescendants.java deleted file mode 100644 index 3e2cf755b2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetDescendants.java +++ /dev/null @@ -1,291 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="depth" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePathSegment" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "depth", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePathSegment", - "extension" -}) -@XmlRootElement(name = "getDescendants") -public class GetDescendants { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String folderId; - @XmlElementRef(name = "depth", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement depth; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePathSegment", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePathSegment; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the depth property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getDepth() { - return depth; - } - - /** - * Sets the value of the depth property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setDepth(JAXBElement value) { - this.depth = ((JAXBElement ) value); - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePathSegment property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePathSegment() { - return includePathSegment; - } - - /** - * Sets the value of the includePathSegment property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePathSegment(JAXBElement value) { - this.includePathSegment = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetDescendantsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetDescendantsResponse.java deleted file mode 100644 index 50c8aea20b..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetDescendantsResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderContainerType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getDescendantsResponse") -public class GetDescendantsResponse { - - protected List objects; - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectInFolderContainerType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetFolderParent.java b/source/generated/org/alfresco/repo/cmis/ws/GetFolderParent.java deleted file mode 100644 index bb873fc09e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetFolderParent.java +++ /dev/null @@ -1,149 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "filter", - "extension" -}) -@XmlRootElement(name = "getFolderParent") -public class GetFolderParent { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String folderId; - protected String filter; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFilter(String value) { - this.filter = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetFolderParentResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetFolderParentResponse.java deleted file mode 100644 index 2c91f9e30c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetFolderParentResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "object" -}) -@XmlRootElement(name = "getFolderParentResponse") -public class GetFolderParentResponse { - - @XmlElement(required = true) - protected CmisObjectType object; - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetFolderTree.java b/source/generated/org/alfresco/repo/cmis/ws/GetFolderTree.java deleted file mode 100644 index efae9ef679..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetFolderTree.java +++ /dev/null @@ -1,291 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="depth" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePathSegment" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "folderId", - "depth", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePathSegment", - "extension" -}) -@XmlRootElement(name = "getFolderTree") -public class GetFolderTree { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String folderId; - @XmlElementRef(name = "depth", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement depth; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePathSegment", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePathSegment; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFolderId(String value) { - this.folderId = value; - } - - /** - * Gets the value of the depth property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getDepth() { - return depth; - } - - /** - * Sets the value of the depth property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setDepth(JAXBElement value) { - this.depth = ((JAXBElement ) value); - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePathSegment property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePathSegment() { - return includePathSegment; - } - - /** - * Sets the value of the includePathSegment property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePathSegment(JAXBElement value) { - this.includePathSegment = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetFolderTreeResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetFolderTreeResponse.java deleted file mode 100644 index ca937df552..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetFolderTreeResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectInFolderContainerType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getFolderTreeResponse") -public class GetFolderTreeResponse { - - protected List objects; - - /** - * Gets the value of the objects property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the objects property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getObjects().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectInFolderContainerType } - * - * - */ - public List getObjects() { - if (objects == null) { - objects = new ArrayList(); - } - return this.objects; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObject.java b/source/generated/org/alfresco/repo/cmis/ws/GetObject.java deleted file mode 100644 index d58f38ac9f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObject.java +++ /dev/null @@ -1,290 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePolicyIds" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePolicyIds", - "includeACL", - "extension" -}) -@XmlRootElement(name = "getObject") -public class GetObject { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePolicyIds", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePolicyIds; - @XmlElementRef(name = "includeACL", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeACL; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePolicyIds property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePolicyIds() { - return includePolicyIds; - } - - /** - * Sets the value of the includePolicyIds property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePolicyIds(JAXBElement value) { - this.includePolicyIds = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeACL property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeACL() { - return includeACL; - } - - /** - * Sets the value of the includeACL property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeACL(JAXBElement value) { - this.includeACL = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPath.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPath.java deleted file mode 100644 index 06c6e61057..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPath.java +++ /dev/null @@ -1,290 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="path" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePolicyIds" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "path", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePolicyIds", - "includeACL", - "extension" -}) -@XmlRootElement(name = "getObjectByPath") -public class GetObjectByPath { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String path; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePolicyIds", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePolicyIds; - @XmlElementRef(name = "includeACL", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeACL; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the path property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPath() { - return path; - } - - /** - * Sets the value of the path property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPath(String value) { - this.path = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePolicyIds property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePolicyIds() { - return includePolicyIds; - } - - /** - * Sets the value of the includePolicyIds property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePolicyIds(JAXBElement value) { - this.includePolicyIds = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeACL property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeACL() { - return includeACL; - } - - /** - * Sets the value of the includeACL property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeACL(JAXBElement value) { - this.includeACL = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPathResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPathResponse.java deleted file mode 100644 index 1fb46c7889..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectByPathResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "object" -}) -@XmlRootElement(name = "getObjectByPathResponse") -public class GetObjectByPathResponse { - - @XmlElement(required = true) - protected CmisObjectType object; - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersion.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersion.java deleted file mode 100644 index ccb5deafda..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersion.java +++ /dev/null @@ -1,317 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="major" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePolicyIds" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeACL" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "major", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includePolicyIds", - "includeACL", - "extension" -}) -@XmlRootElement(name = "getObjectOfLatestVersion") -public class GetObjectOfLatestVersion { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - protected Boolean major; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includePolicyIds", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePolicyIds; - @XmlElementRef(name = "includeACL", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeACL; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the major property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isMajor() { - return major; - } - - /** - * Sets the value of the major property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setMajor(Boolean value) { - this.major = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePolicyIds property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePolicyIds() { - return includePolicyIds; - } - - /** - * Sets the value of the includePolicyIds property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePolicyIds(JAXBElement value) { - this.includePolicyIds = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeACL property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeACL() { - return includeACL; - } - - /** - * Sets the value of the includeACL property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeACL(JAXBElement value) { - this.includeACL = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersionResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersionResponse.java deleted file mode 100644 index 0a8ef73578..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectOfLatestVersionResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "object" -}) -@XmlRootElement(name = "getObjectOfLatestVersionResponse") -public class GetObjectOfLatestVersionResponse { - - @XmlElement(required = true) - protected CmisObjectType object; - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectParents.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectParents.java deleted file mode 100644 index bbc15427fe..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectParents.java +++ /dev/null @@ -1,262 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeRelativePathSegment" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "filter", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "includeRelativePathSegment", - "extension" -}) -@XmlRootElement(name = "getObjectParents") -public class GetObjectParents { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "includeRelativePathSegment", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelativePathSegment; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelativePathSegment property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeRelativePathSegment() { - return includeRelativePathSegment; - } - - /** - * Sets the value of the includeRelativePathSegment property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeRelativePathSegment(JAXBElement value) { - this.includeRelativePathSegment = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectParentsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectParentsResponse.java deleted file mode 100644 index ae5a7f3c3b..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectParentsResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="parents" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectParentsType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "parents" -}) -@XmlRootElement(name = "getObjectParentsResponse") -public class GetObjectParentsResponse { - - protected List parents; - - /** - * Gets the value of the parents property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the parents property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getParents().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisObjectParentsType } - * - * - */ - public List getParents() { - if (parents == null) { - parents = new ArrayList(); - } - return this.parents; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationships.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationships.java deleted file mode 100644 index b34f299269..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationships.java +++ /dev/null @@ -1,318 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="includeSubRelationshipTypes" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="relationshipDirection" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumRelationshipDirection" minOccurs="0"/>
- *         <element name="typeId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "includeSubRelationshipTypes", - "relationshipDirection", - "typeId", - "filter", - "includeAllowableActions", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "getObjectRelationships") -public class GetObjectRelationships { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - protected Boolean includeSubRelationshipTypes; - @XmlElementRef(name = "relationshipDirection", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement relationshipDirection; - @XmlElementRef(name = "typeId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement typeId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the includeSubRelationshipTypes property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isIncludeSubRelationshipTypes() { - return includeSubRelationshipTypes; - } - - /** - * Sets the value of the includeSubRelationshipTypes property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIncludeSubRelationshipTypes(Boolean value) { - this.includeSubRelationshipTypes = value; - } - - /** - * Gets the value of the relationshipDirection property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumRelationshipDirection }{@code >} - * - */ - public JAXBElement getRelationshipDirection() { - return relationshipDirection; - } - - /** - * Sets the value of the relationshipDirection property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumRelationshipDirection }{@code >} - * - */ - public void setRelationshipDirection(JAXBElement value) { - this.relationshipDirection = ((JAXBElement ) value); - } - - /** - * Gets the value of the typeId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getTypeId() { - return typeId; - } - - /** - * Sets the value of the typeId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setTypeId(JAXBElement value) { - this.typeId = ((JAXBElement ) value); - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationshipsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationshipsResponse.java deleted file mode 100644 index 866dbe4d28..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectRelationshipsResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectListType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "getObjectRelationshipsResponse") -public class GetObjectRelationshipsResponse { - - @XmlElement(required = true) - protected CmisObjectListType objects; - - /** - * Gets the value of the objects property. - * - * @return - * possible object is - * {@link CmisObjectListType } - * - */ - public CmisObjectListType getObjects() { - return objects; - } - - /** - * Sets the value of the objects property. - * - * @param value - * allowed object is - * {@link CmisObjectListType } - * - */ - public void setObjects(CmisObjectListType value) { - this.objects = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetObjectResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetObjectResponse.java deleted file mode 100644 index 1d0b691d87..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetObjectResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="object" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisObjectType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "object" -}) -@XmlRootElement(name = "getObjectResponse") -public class GetObjectResponse { - - @XmlElement(required = true) - protected CmisObjectType object; - - /** - * Gets the value of the object property. - * - * @return - * possible object is - * {@link CmisObjectType } - * - */ - public CmisObjectType getObject() { - return object; - } - - /** - * Sets the value of the object property. - * - * @param value - * allowed object is - * {@link CmisObjectType } - * - */ - public void setObject(CmisObjectType value) { - this.object = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetProperties.java b/source/generated/org/alfresco/repo/cmis/ws/GetProperties.java deleted file mode 100644 index 10a4aa6540..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetProperties.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "filter", - "extension" -}) -@XmlRootElement(name = "getProperties") -public class GetProperties { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersion.java b/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersion.java deleted file mode 100644 index 0a10fd4bf3..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersion.java +++ /dev/null @@ -1,177 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="major" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "major", - "filter", - "extension" -}) -@XmlRootElement(name = "getPropertiesOfLatestVersion") -public class GetPropertiesOfLatestVersion { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - protected Boolean major; - @XmlElementRef(name = "filter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement filter; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the major property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isMajor() { - return major; - } - - /** - * Sets the value of the major property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setMajor(Boolean value) { - this.major = value; - } - - /** - * Gets the value of the filter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFilter() { - return filter; - } - - /** - * Sets the value of the filter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFilter(JAXBElement value) { - this.filter = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersionResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersionResponse.java deleted file mode 100644 index 85dcfd4433..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesOfLatestVersionResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "properties" -}) -@XmlRootElement(name = "getPropertiesOfLatestVersionResponse") -public class GetPropertiesOfLatestVersionResponse { - - @XmlElement(required = true) - protected CmisPropertiesType properties; - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesResponse.java deleted file mode 100644 index 65997203dc..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetPropertiesResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "properties" -}) -@XmlRootElement(name = "getPropertiesResponse") -public class GetPropertiesResponse { - - @XmlElement(required = true) - protected CmisPropertiesType properties; - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRenditions.java b/source/generated/org/alfresco/repo/cmis/ws/GetRenditions.java deleted file mode 100644 index eacac6cea1..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRenditions.java +++ /dev/null @@ -1,207 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "renditionFilter", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "getRenditions") -public class GetRenditions { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRenditionsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetRenditionsResponse.java deleted file mode 100644 index 95e817756f..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRenditionsResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="renditions" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisRenditionType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "renditions" -}) -@XmlRootElement(name = "getRenditionsResponse") -public class GetRenditionsResponse { - - protected List renditions; - - /** - * Gets the value of the renditions property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the renditions property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getRenditions().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisRenditionType } - * - * - */ - public List getRenditions() { - if (renditions == null) { - renditions = new ArrayList(); - } - return this.renditions; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRepositories.java b/source/generated/org/alfresco/repo/cmis/ws/GetRepositories.java deleted file mode 100644 index ce278fc3c0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRepositories.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "getRepositories") -public class GetRepositories { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoriesResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetRepositoriesResponse.java deleted file mode 100644 index f03cf751bf..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoriesResponse.java +++ /dev/null @@ -1,71 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositories" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisRepositoryEntryType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositories" -}) -@XmlRootElement(name = "getRepositoriesResponse") -public class GetRepositoriesResponse { - - @XmlElement(nillable = true) - protected List repositories; - - /** - * Gets the value of the repositories property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the repositories property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getRepositories().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisRepositoryEntryType } - * - * - */ - public List getRepositories() { - if (repositories == null) { - repositories = new ArrayList(); - } - return this.repositories; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfo.java b/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfo.java deleted file mode 100644 index f55a603978..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfo.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "extension" -}) -@XmlRootElement(name = "getRepositoryInfo") -public class GetRepositoryInfo { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfoResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfoResponse.java deleted file mode 100644 index 086857a85c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetRepositoryInfoResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryInfo" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisRepositoryInfoType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryInfo" -}) -@XmlRootElement(name = "getRepositoryInfoResponse") -public class GetRepositoryInfoResponse { - - @XmlElement(required = true) - protected CmisRepositoryInfoType repositoryInfo; - - /** - * Gets the value of the repositoryInfo property. - * - * @return - * possible object is - * {@link CmisRepositoryInfoType } - * - */ - public CmisRepositoryInfoType getRepositoryInfo() { - return repositoryInfo; - } - - /** - * Sets the value of the repositoryInfo property. - * - * @param value - * allowed object is - * {@link CmisRepositoryInfoType } - * - */ - public void setRepositoryInfo(CmisRepositoryInfoType value) { - this.repositoryInfo = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildren.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildren.java deleted file mode 100644 index 0669c64fbc..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildren.java +++ /dev/null @@ -1,207 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="typeId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="includePropertyDefinitions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "typeId", - "includePropertyDefinitions", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "getTypeChildren") -public class GetTypeChildren { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElementRef(name = "typeId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement typeId; - @XmlElementRef(name = "includePropertyDefinitions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePropertyDefinitions; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the typeId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getTypeId() { - return typeId; - } - - /** - * Sets the value of the typeId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setTypeId(JAXBElement value) { - this.typeId = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePropertyDefinitions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePropertyDefinitions() { - return includePropertyDefinitions; - } - - /** - * Sets the value of the includePropertyDefinitions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePropertyDefinitions(JAXBElement value) { - this.includePropertyDefinitions = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildrenResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildrenResponse.java deleted file mode 100644 index 1618aa4d25..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeChildrenResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="types" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisTypeDefinitionListType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "types" -}) -@XmlRootElement(name = "getTypeChildrenResponse") -public class GetTypeChildrenResponse { - - @XmlElement(required = true) - protected CmisTypeDefinitionListType types; - - /** - * Gets the value of the types property. - * - * @return - * possible object is - * {@link CmisTypeDefinitionListType } - * - */ - public CmisTypeDefinitionListType getTypes() { - return types; - } - - /** - * Sets the value of the types property. - * - * @param value - * allowed object is - * {@link CmisTypeDefinitionListType } - * - */ - public void setTypes(CmisTypeDefinitionListType value) { - this.types = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinition.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinition.java deleted file mode 100644 index 0bae642c56..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinition.java +++ /dev/null @@ -1,122 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="typeId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "typeId", - "extension" -}) -@XmlRootElement(name = "getTypeDefinition") -public class GetTypeDefinition { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String typeId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the typeId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTypeId() { - return typeId; - } - - /** - * Sets the value of the typeId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTypeId(String value) { - this.typeId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinitionResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinitionResponse.java deleted file mode 100644 index e30001491c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDefinitionResponse.java +++ /dev/null @@ -1,62 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="type" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisTypeDefinitionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "type" -}) -@XmlRootElement(name = "getTypeDefinitionResponse") -public class GetTypeDefinitionResponse { - - protected CmisTypeDefinitionType type; - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link CmisTypeDefinitionType } - * - */ - public CmisTypeDefinitionType getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link CmisTypeDefinitionType } - * - */ - public void setType(CmisTypeDefinitionType value) { - this.type = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendants.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendants.java deleted file mode 100644 index 061e214611..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendants.java +++ /dev/null @@ -1,179 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="typeId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="depth" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="includePropertyDefinitions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "typeId", - "depth", - "includePropertyDefinitions", - "extension" -}) -@XmlRootElement(name = "getTypeDescendants") -public class GetTypeDescendants { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElementRef(name = "typeId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement typeId; - @XmlElementRef(name = "depth", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement depth; - @XmlElementRef(name = "includePropertyDefinitions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includePropertyDefinitions; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the typeId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getTypeId() { - return typeId; - } - - /** - * Sets the value of the typeId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setTypeId(JAXBElement value) { - this.typeId = ((JAXBElement ) value); - } - - /** - * Gets the value of the depth property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getDepth() { - return depth; - } - - /** - * Sets the value of the depth property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setDepth(JAXBElement value) { - this.depth = ((JAXBElement ) value); - } - - /** - * Gets the value of the includePropertyDefinitions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludePropertyDefinitions() { - return includePropertyDefinitions; - } - - /** - * Sets the value of the includePropertyDefinitions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludePropertyDefinitions(JAXBElement value) { - this.includePropertyDefinitions = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendantsResponse.java b/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendantsResponse.java deleted file mode 100644 index 4d76de5f4e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/GetTypeDescendantsResponse.java +++ /dev/null @@ -1,69 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="types" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisTypeContainer" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "types" -}) -@XmlRootElement(name = "getTypeDescendantsResponse") -public class GetTypeDescendantsResponse { - - protected List types; - - /** - * Gets the value of the types property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the types property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getTypes().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link CmisTypeContainer } - * - * - */ - public List getTypes() { - if (types == null) { - types = new ArrayList(); - } - return this.types; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/MoveObject.java b/source/generated/org/alfresco/repo/cmis/ws/MoveObject.java deleted file mode 100644 index bb8b2f4633..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/MoveObject.java +++ /dev/null @@ -1,178 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="targetFolderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="sourceFolderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "targetFolderId", - "sourceFolderId", - "extension" -}) -@XmlRootElement(name = "moveObject") -public class MoveObject { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElement(required = true) - protected String targetFolderId; - @XmlElement(required = true) - protected String sourceFolderId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the targetFolderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTargetFolderId() { - return targetFolderId; - } - - /** - * Sets the value of the targetFolderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTargetFolderId(String value) { - this.targetFolderId = value; - } - - /** - * Gets the value of the sourceFolderId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSourceFolderId() { - return sourceFolderId; - } - - /** - * Sets the value of the sourceFolderId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSourceFolderId(String value) { - this.sourceFolderId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/MoveObjectResponse.java b/source/generated/org/alfresco/repo/cmis/ws/MoveObjectResponse.java deleted file mode 100644 index 7c8a84438c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/MoveObjectResponse.java +++ /dev/null @@ -1,94 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "extension" -}) -@XmlRootElement(name = "moveObjectResponse") -public class MoveObjectResponse { - - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/MultiFilingService.java b/source/generated/org/alfresco/repo/cmis/ws/MultiFilingService.java deleted file mode 100644 index 779538f7a2..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/MultiFilingService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "MultiFilingService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class MultiFilingService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "MultiFilingService"); - public final static QName MultiFilingServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "MultiFilingServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public MultiFilingService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public MultiFilingService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public MultiFilingService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns MultiFilingServicePort - */ - @WebEndpoint(name = "MultiFilingServicePort") - public MultiFilingServicePort getMultiFilingServicePort() { - return super.getPort(MultiFilingServicePort, MultiFilingServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns MultiFilingServicePort - */ - @WebEndpoint(name = "MultiFilingServicePort") - public MultiFilingServicePort getMultiFilingServicePort(WebServiceFeature... features) { - return super.getPort(MultiFilingServicePort, MultiFilingServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/MultiFilingServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/MultiFilingServicePort.java deleted file mode 100644 index 4efa29f9ea..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/MultiFilingServicePort.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebParam.Mode; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "MultiFilingServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface MultiFilingServicePort { - - @RequestWrapper(localName = "removeObjectFromFolder", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.RemoveObjectFromFolder") - @ResponseWrapper(localName = "removeObjectFromFolderResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.RemoveObjectFromFolderResponse") - @WebMethod - public void removeObjectFromFolder( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "addObjectToFolder", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.AddObjectToFolder") - @ResponseWrapper(localName = "addObjectToFolderResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.AddObjectToFolderResponse") - @WebMethod - public void addObjectToFolder( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "allVersions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean allVersions, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/NavigationService.java b/source/generated/org/alfresco/repo/cmis/ws/NavigationService.java deleted file mode 100644 index cbd19f9685..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/NavigationService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "NavigationService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class NavigationService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "NavigationService"); - public final static QName NavigationServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "NavigationServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public NavigationService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public NavigationService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public NavigationService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns NavigationServicePort - */ - @WebEndpoint(name = "NavigationServicePort") - public NavigationServicePort getNavigationServicePort() { - return super.getPort(NavigationServicePort, NavigationServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns NavigationServicePort - */ - @WebEndpoint(name = "NavigationServicePort") - public NavigationServicePort getNavigationServicePort(WebServiceFeature... features) { - return super.getPort(NavigationServicePort, NavigationServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/NavigationServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/NavigationServicePort.java deleted file mode 100644 index 9ac0c6527e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/NavigationServicePort.java +++ /dev/null @@ -1,165 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "NavigationServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface NavigationServicePort { - - @WebResult(name = "parents", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getObjectParents", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectParents") - @ResponseWrapper(localName = "getObjectParentsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectParentsResponse") - @WebMethod - public java.util.List getObjectParents( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includeRelativePathSegment", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeRelativePathSegment, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getCheckedOutDocs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetCheckedOutDocs") - @ResponseWrapper(localName = "getCheckedOutDocsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetCheckedOutDocsResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectListType getCheckedOutDocs( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "orderBy", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String orderBy, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "skipCount", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger skipCount, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getDescendants", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetDescendants") - @ResponseWrapper(localName = "getDescendantsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetDescendantsResponse") - @WebMethod - public java.util.List getDescendants( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "depth", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger depth, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePathSegment", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePathSegment, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getFolderTree", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetFolderTree") - @ResponseWrapper(localName = "getFolderTreeResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetFolderTreeResponse") - @WebMethod - public java.util.List getFolderTree( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "depth", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger depth, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePathSegment", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePathSegment, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getChildren", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetChildren") - @ResponseWrapper(localName = "getChildrenResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetChildrenResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectInFolderListType getChildren( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "orderBy", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String orderBy, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePathSegment", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePathSegment, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "skipCount", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger skipCount, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "object", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getFolderParent", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetFolderParent") - @ResponseWrapper(localName = "getFolderParentResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetFolderParentResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectType getFolderParent( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ObjectFactory.java b/source/generated/org/alfresco/repo/cmis/ws/ObjectFactory.java deleted file mode 100644 index 94222ef7a0..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ObjectFactory.java +++ /dev/null @@ -1,2933 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the org.alfresco.repo.cmis.ws package. - *

An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _Query_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/core/200908/", "query"); - private final static QName _CmisFault_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "cmisFault"); - private final static QName _Acl_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/core/200908/", "acl"); - private final static QName _AllowableActions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/core/200908/", "allowableActions"); - private final static QName _CreateDocumentFromSourceRemoveACEs_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "removeACEs"); - private final static QName _CreateDocumentFromSourceFolderId_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "folderId"); - private final static QName _CreateDocumentFromSourceExtension_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "extension"); - private final static QName _CreateDocumentFromSourceAddACEs_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "addACEs"); - private final static QName _CreateDocumentFromSourceVersioningState_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "versioningState"); - private final static QName _ApplyACLACLPropagation_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "ACLPropagation"); - private final static QName _GetObjectIncludeRelationships_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includeRelationships"); - private final static QName _GetObjectIncludeAllowableActions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includeAllowableActions"); - private final static QName _GetObjectIncludeACL_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includeACL"); - private final static QName _GetObjectRenditionFilter_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "renditionFilter"); - private final static QName _GetObjectFilter_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "filter"); - private final static QName _GetObjectIncludePolicyIds_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includePolicyIds"); - private final static QName _DeleteObjectAllVersions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "allVersions"); - private final static QName _QuerySkipCount_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "skipCount"); - private final static QName _QueryMaxItems_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "maxItems"); - private final static QName _QuerySearchAllVersions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "searchAllVersions"); - private final static QName _CheckInContentStream_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "contentStream"); - private final static QName _CheckInMajor_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "major"); - private final static QName _CheckInProperties_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "properties"); - private final static QName _CheckInCheckinComment_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "checkinComment"); - private final static QName _GetContentChangesIncludeProperties_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includeProperties"); - private final static QName _GetContentChangesChangeLogToken_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "changeLogToken"); - private final static QName _GetFolderTreeDepth_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "depth"); - private final static QName _GetFolderTreeIncludePathSegment_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includePathSegment"); - private final static QName _GetObjectParentsIncludeRelativePathSegment_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includeRelativePathSegment"); - private final static QName _SetContentStreamChangeToken_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "changeToken"); - private final static QName _SetContentStreamOverwriteFlag_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "overwriteFlag"); - private final static QName _GetTypeChildrenTypeId_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "typeId"); - private final static QName _GetTypeChildrenIncludePropertyDefinitions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "includePropertyDefinitions"); - private final static QName _GetCheckedOutDocsOrderBy_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "orderBy"); - private final static QName _GetContentStreamOffset_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "offset"); - private final static QName _GetContentStreamLength_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "length"); - private final static QName _GetContentStreamStreamId_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "streamId"); - private final static QName _GetObjectRelationshipsRelationshipDirection_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "relationshipDirection"); - private final static QName _DeleteTreeContinueOnFailure_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "continueOnFailure"); - private final static QName _DeleteTreeUnfileObjects_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "unfileObjects"); - private final static QName _GetACLOnlyBasicPermissions_QNAME = new QName("http://docs.oasis-open.org/ns/cmis/messaging/200908/", "onlyBasicPermissions"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.alfresco.repo.cmis.ws - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link ApplyACL } - * - */ - public ApplyACL createApplyACL() { - return new ApplyACL(); - } - - /** - * Create an instance of {@link GetACLResponse } - * - */ - public GetACLResponse createGetACLResponse() { - return new GetACLResponse(); - } - - /** - * Create an instance of {@link CmisTypeDefinitionListType } - * - */ - public CmisTypeDefinitionListType createCmisTypeDefinitionListType() { - return new CmisTypeDefinitionListType(); - } - - /** - * Create an instance of {@link GetAllowableActionsResponse } - * - */ - public GetAllowableActionsResponse createGetAllowableActionsResponse() { - return new GetAllowableActionsResponse(); - } - - /** - * Create an instance of {@link GetRepositoryInfo } - * - */ - public GetRepositoryInfo createGetRepositoryInfo() { - return new GetRepositoryInfo(); - } - - /** - * Create an instance of {@link ApplyPolicyResponse } - * - */ - public ApplyPolicyResponse createApplyPolicyResponse() { - return new ApplyPolicyResponse(); - } - - /** - * Create an instance of {@link GetObjectParentsResponse } - * - */ - public GetObjectParentsResponse createGetObjectParentsResponse() { - return new GetObjectParentsResponse(); - } - - /** - * Create an instance of {@link DeleteObject } - * - */ - public DeleteObject createDeleteObject() { - return new DeleteObject(); - } - - /** - * Create an instance of {@link GetRepositoryInfoResponse } - * - */ - public GetRepositoryInfoResponse createGetRepositoryInfoResponse() { - return new GetRepositoryInfoResponse(); - } - - /** - * Create an instance of {@link CmisPropertyDecimalDefinitionType } - * - */ - public CmisPropertyDecimalDefinitionType createCmisPropertyDecimalDefinitionType() { - return new CmisPropertyDecimalDefinitionType(); - } - - /** - * Create an instance of {@link CmisTypeContainer } - * - */ - public CmisTypeContainer createCmisTypeContainer() { - return new CmisTypeContainer(); - } - - /** - * Create an instance of {@link CmisRepositoryInfoType } - * - */ - public CmisRepositoryInfoType createCmisRepositoryInfoType() { - return new CmisRepositoryInfoType(); - } - - /** - * Create an instance of {@link GetPropertiesOfLatestVersionResponse } - * - */ - public GetPropertiesOfLatestVersionResponse createGetPropertiesOfLatestVersionResponse() { - return new GetPropertiesOfLatestVersionResponse(); - } - - /** - * Create an instance of {@link CmisTypeRelationshipDefinitionType } - * - */ - public CmisTypeRelationshipDefinitionType createCmisTypeRelationshipDefinitionType() { - return new CmisTypeRelationshipDefinitionType(); - } - - /** - * Create an instance of {@link CmisTypeDefinitionType } - * - */ - public CmisTypeDefinitionType createCmisTypeDefinitionType() { - return new CmisTypeDefinitionType(); - } - - /** - * Create an instance of {@link GetAllVersionsResponse } - * - */ - public GetAllVersionsResponse createGetAllVersionsResponse() { - return new GetAllVersionsResponse(); - } - - /** - * Create an instance of {@link GetContentChanges } - * - */ - public GetContentChanges createGetContentChanges() { - return new GetContentChanges(); - } - - /** - * Create an instance of {@link CmisAccessControlPrincipalType } - * - */ - public CmisAccessControlPrincipalType createCmisAccessControlPrincipalType() { - return new CmisAccessControlPrincipalType(); - } - - /** - * Create an instance of {@link CmisPropertyDecimal } - * - */ - public CmisPropertyDecimal createCmisPropertyDecimal() { - return new CmisPropertyDecimal(); - } - - /** - * Create an instance of {@link CmisPropertyHtml } - * - */ - public CmisPropertyHtml createCmisPropertyHtml() { - return new CmisPropertyHtml(); - } - - /** - * Create an instance of {@link CmisProperty } - * - */ - public CmisProperty createCmisProperty() { - return new CmisProperty(); - } - - /** - * Create an instance of {@link GetDescendantsResponse } - * - */ - public GetDescendantsResponse createGetDescendantsResponse() { - return new GetDescendantsResponse(); - } - - /** - * Create an instance of {@link GetContentStreamResponse } - * - */ - public GetContentStreamResponse createGetContentStreamResponse() { - return new GetContentStreamResponse(); - } - - /** - * Create an instance of {@link GetFolderParentResponse } - * - */ - public GetFolderParentResponse createGetFolderParentResponse() { - return new GetFolderParentResponse(); - } - - /** - * Create an instance of {@link CmisRenditionType } - * - */ - public CmisRenditionType createCmisRenditionType() { - return new CmisRenditionType(); - } - - /** - * Create an instance of {@link CmisPropertyDateTime } - * - */ - public CmisPropertyDateTime createCmisPropertyDateTime() { - return new CmisPropertyDateTime(); - } - - /** - * Create an instance of {@link GetFolderTree } - * - */ - public GetFolderTree createGetFolderTree() { - return new GetFolderTree(); - } - - /** - * Create an instance of {@link DeleteContentStream } - * - */ - public DeleteContentStream createDeleteContentStream() { - return new DeleteContentStream(); - } - - /** - * Create an instance of {@link GetObjectParents } - * - */ - public GetObjectParents createGetObjectParents() { - return new GetObjectParents(); - } - - /** - * Create an instance of {@link CmisACLCapabilityType } - * - */ - public CmisACLCapabilityType createCmisACLCapabilityType() { - return new CmisACLCapabilityType(); - } - - /** - * Create an instance of {@link CmisChoiceUri } - * - */ - public CmisChoiceUri createCmisChoiceUri() { - return new CmisChoiceUri(); - } - - /** - * Create an instance of {@link AddObjectToFolderResponse } - * - */ - public AddObjectToFolderResponse createAddObjectToFolderResponse() { - return new AddObjectToFolderResponse(); - } - - /** - * Create an instance of {@link CmisPropertyHtmlDefinitionType } - * - */ - public CmisPropertyHtmlDefinitionType createCmisPropertyHtmlDefinitionType() { - return new CmisPropertyHtmlDefinitionType(); - } - - /** - * Create an instance of {@link GetFolderParent } - * - */ - public GetFolderParent createGetFolderParent() { - return new GetFolderParent(); - } - - /** - * Create an instance of {@link GetObjectResponse } - * - */ - public GetObjectResponse createGetObjectResponse() { - return new GetObjectResponse(); - } - - /** - * Create an instance of {@link CmisACLType } - * - */ - public CmisACLType createCmisACLType() { - return new CmisACLType(); - } - - /** - * Create an instance of {@link GetTypeChildren } - * - */ - public GetTypeChildren createGetTypeChildren() { - return new GetTypeChildren(); - } - - /** - * Create an instance of {@link CmisPropertyBoolean } - * - */ - public CmisPropertyBoolean createCmisPropertyBoolean() { - return new CmisPropertyBoolean(); - } - - /** - * Create an instance of {@link ApplyACLResponse } - * - */ - public ApplyACLResponse createApplyACLResponse() { - return new ApplyACLResponse(); - } - - /** - * Create an instance of {@link SetAspects } - * - */ - public SetAspects createSetAspects() { - return new SetAspects(); - } - - /** - * Create an instance of {@link CheckOutResponse } - * - */ - public CheckOutResponse createCheckOutResponse() { - return new CheckOutResponse(); - } - - /** - * Create an instance of {@link CmisPropertyIntegerDefinitionType } - * - */ - public CmisPropertyIntegerDefinitionType createCmisPropertyIntegerDefinitionType() { - return new CmisPropertyIntegerDefinitionType(); - } - - /** - * Create an instance of {@link CmisChoiceDecimal } - * - */ - public CmisChoiceDecimal createCmisChoiceDecimal() { - return new CmisChoiceDecimal(); - } - - /** - * Create an instance of {@link GetRepositoriesResponse } - * - */ - public GetRepositoriesResponse createGetRepositoriesResponse() { - return new GetRepositoriesResponse(); - } - - /** - * Create an instance of {@link CmisRepositoryCapabilitiesType } - * - */ - public CmisRepositoryCapabilitiesType createCmisRepositoryCapabilitiesType() { - return new CmisRepositoryCapabilitiesType(); - } - - /** - * Create an instance of {@link SetContentStreamResponse } - * - */ - public SetContentStreamResponse createSetContentStreamResponse() { - return new SetContentStreamResponse(); - } - - /** - * Create an instance of {@link CmisPermissionDefinition } - * - */ - public CmisPermissionDefinition createCmisPermissionDefinition() { - return new CmisPermissionDefinition(); - } - - /** - * Create an instance of {@link CmisQueryType } - * - */ - public CmisQueryType createCmisQueryType() { - return new CmisQueryType(); - } - - /** - * Create an instance of {@link GetTypeDescendantsResponse } - * - */ - public GetTypeDescendantsResponse createGetTypeDescendantsResponse() { - return new GetTypeDescendantsResponse(); - } - - /** - * Create an instance of {@link GetTypeDefinition } - * - */ - public GetTypeDefinition createGetTypeDefinition() { - return new GetTypeDefinition(); - } - - /** - * Create an instance of {@link CmisContentStreamType } - * - */ - public CmisContentStreamType createCmisContentStreamType() { - return new CmisContentStreamType(); - } - - /** - * Create an instance of {@link RemovePolicy } - * - */ - public RemovePolicy createRemovePolicy() { - return new RemovePolicy(); - } - - /** - * Create an instance of {@link CmisTypePolicyDefinitionType } - * - */ - public CmisTypePolicyDefinitionType createCmisTypePolicyDefinitionType() { - return new CmisTypePolicyDefinitionType(); - } - - /** - * Create an instance of {@link GetContentStream } - * - */ - public GetContentStream createGetContentStream() { - return new GetContentStream(); - } - - /** - * Create an instance of {@link MoveObjectResponse } - * - */ - public MoveObjectResponse createMoveObjectResponse() { - return new MoveObjectResponse(); - } - - /** - * Create an instance of {@link GetObjectByPath } - * - */ - public GetObjectByPath createGetObjectByPath() { - return new GetObjectByPath(); - } - - /** - * Create an instance of {@link CmisPropertiesType } - * - */ - public CmisPropertiesType createCmisPropertiesType() { - return new CmisPropertiesType(); - } - - /** - * Create an instance of {@link CmisChoice } - * - */ - public CmisChoice createCmisChoice() { - return new CmisChoice(); - } - - /** - * Create an instance of {@link UpdatePropertiesResponse } - * - */ - public UpdatePropertiesResponse createUpdatePropertiesResponse() { - return new UpdatePropertiesResponse(); - } - - /** - * Create an instance of {@link DeleteTree } - * - */ - public DeleteTree createDeleteTree() { - return new DeleteTree(); - } - - /** - * Create an instance of {@link CancelCheckOutResponse } - * - */ - public CancelCheckOutResponse createCancelCheckOutResponse() { - return new CancelCheckOutResponse(); - } - - /** - * Create an instance of {@link CmisRepositoryEntryType } - * - */ - public CmisRepositoryEntryType createCmisRepositoryEntryType() { - return new CmisRepositoryEntryType(); - } - - /** - * Create an instance of {@link CmisPropertyInteger } - * - */ - public CmisPropertyInteger createCmisPropertyInteger() { - return new CmisPropertyInteger(); - } - - /** - * Create an instance of {@link CmisPropertyUriDefinitionType } - * - */ - public CmisPropertyUriDefinitionType createCmisPropertyUriDefinitionType() { - return new CmisPropertyUriDefinitionType(); - } - - /** - * Create an instance of {@link GetAppliedPolicies } - * - */ - public GetAppliedPolicies createGetAppliedPolicies() { - return new GetAppliedPolicies(); - } - - /** - * Create an instance of {@link GetACL } - * - */ - public GetACL createGetACL() { - return new GetACL(); - } - - /** - * Create an instance of {@link UpdateProperties } - * - */ - public UpdateProperties createUpdateProperties() { - return new UpdateProperties(); - } - - /** - * Create an instance of {@link GetAllVersions } - * - */ - public GetAllVersions createGetAllVersions() { - return new GetAllVersions(); - } - - /** - * Create an instance of {@link CmisPropertyBooleanDefinitionType } - * - */ - public CmisPropertyBooleanDefinitionType createCmisPropertyBooleanDefinitionType() { - return new CmisPropertyBooleanDefinitionType(); - } - - /** - * Create an instance of {@link CmisAllowableActionsType } - * - */ - public CmisAllowableActionsType createCmisAllowableActionsType() { - return new CmisAllowableActionsType(); - } - - /** - * Create an instance of {@link CreateDocument } - * - */ - public CreateDocument createCreateDocument() { - return new CreateDocument(); - } - - /** - * Create an instance of {@link CreateRelationship } - * - */ - public CreateRelationship createCreateRelationship() { - return new CreateRelationship(); - } - - /** - * Create an instance of {@link CmisChoiceString } - * - */ - public CmisChoiceString createCmisChoiceString() { - return new CmisChoiceString(); - } - - /** - * Create an instance of {@link GetPropertiesOfLatestVersion } - * - */ - public GetPropertiesOfLatestVersion createGetPropertiesOfLatestVersion() { - return new GetPropertiesOfLatestVersion(); - } - - /** - * Create an instance of {@link GetRenditionsResponse } - * - */ - public GetRenditionsResponse createGetRenditionsResponse() { - return new GetRenditionsResponse(); - } - - /** - * Create an instance of {@link CmisAccessControlListType } - * - */ - public CmisAccessControlListType createCmisAccessControlListType() { - return new CmisAccessControlListType(); - } - - /** - * Create an instance of {@link CmisPropertyId } - * - */ - public CmisPropertyId createCmisPropertyId() { - return new CmisPropertyId(); - } - - /** - * Create an instance of {@link GetRepositories } - * - */ - public GetRepositories createGetRepositories() { - return new GetRepositories(); - } - - /** - * Create an instance of {@link CmisTypeFolderDefinitionType } - * - */ - public CmisTypeFolderDefinitionType createCmisTypeFolderDefinitionType() { - return new CmisTypeFolderDefinitionType(); - } - - /** - * Create an instance of {@link CmisFaultType } - * - */ - public CmisFaultType createCmisFaultType() { - return new CmisFaultType(); - } - - /** - * Create an instance of {@link CmisPropertyString } - * - */ - public CmisPropertyString createCmisPropertyString() { - return new CmisPropertyString(); - } - - /** - * Create an instance of {@link GetAppliedPoliciesResponse } - * - */ - public GetAppliedPoliciesResponse createGetAppliedPoliciesResponse() { - return new GetAppliedPoliciesResponse(); - } - - /** - * Create an instance of {@link CmisChoiceBoolean } - * - */ - public CmisChoiceBoolean createCmisChoiceBoolean() { - return new CmisChoiceBoolean(); - } - - /** - * Create an instance of {@link CreateDocumentFromSource } - * - */ - public CreateDocumentFromSource createCreateDocumentFromSource() { - return new CreateDocumentFromSource(); - } - - /** - * Create an instance of {@link GetFolderTreeResponse } - * - */ - public GetFolderTreeResponse createGetFolderTreeResponse() { - return new GetFolderTreeResponse(); - } - - /** - * Create an instance of {@link GetObject } - * - */ - public GetObject createGetObject() { - return new GetObject(); - } - - /** - * Create an instance of {@link GetContentChangesResponse } - * - */ - public GetContentChangesResponse createGetContentChangesResponse() { - return new GetContentChangesResponse(); - } - - /** - * Create an instance of {@link CreateDocumentFromSourceResponse } - * - */ - public CreateDocumentFromSourceResponse createCreateDocumentFromSourceResponse() { - return new CreateDocumentFromSourceResponse(); - } - - /** - * Create an instance of {@link DeleteObjectResponse } - * - */ - public DeleteObjectResponse createDeleteObjectResponse() { - return new DeleteObjectResponse(); - } - - /** - * Create an instance of {@link GetCheckedOutDocsResponse } - * - */ - public GetCheckedOutDocsResponse createGetCheckedOutDocsResponse() { - return new GetCheckedOutDocsResponse(); - } - - /** - * Create an instance of {@link CmisPropertyDefinitionType } - * - */ - public CmisPropertyDefinitionType createCmisPropertyDefinitionType() { - return new CmisPropertyDefinitionType(); - } - - /** - * Create an instance of {@link Query } - * - */ - public Query createQuery() { - return new Query(); - } - - /** - * Create an instance of {@link CmisObjectInFolderContainerType } - * - */ - public CmisObjectInFolderContainerType createCmisObjectInFolderContainerType() { - return new CmisObjectInFolderContainerType(); - } - - /** - * Create an instance of {@link RemovePolicyResponse } - * - */ - public RemovePolicyResponse createRemovePolicyResponse() { - return new RemovePolicyResponse(); - } - - /** - * Create an instance of {@link GetObjectOfLatestVersionResponse } - * - */ - public GetObjectOfLatestVersionResponse createGetObjectOfLatestVersionResponse() { - return new GetObjectOfLatestVersionResponse(); - } - - /** - * Create an instance of {@link CmisPropertyDateTimeDefinitionType } - * - */ - public CmisPropertyDateTimeDefinitionType createCmisPropertyDateTimeDefinitionType() { - return new CmisPropertyDateTimeDefinitionType(); - } - - /** - * Create an instance of {@link CheckIn } - * - */ - public CheckIn createCheckIn() { - return new CheckIn(); - } - - /** - * Create an instance of {@link CmisChoiceId } - * - */ - public CmisChoiceId createCmisChoiceId() { - return new CmisChoiceId(); - } - - /** - * Create an instance of {@link CreateFolder } - * - */ - public CreateFolder createCreateFolder() { - return new CreateFolder(); - } - - /** - * Create an instance of {@link DeleteTreeResponse.FailedToDelete } - * - */ - public DeleteTreeResponse.FailedToDelete createDeleteTreeResponseFailedToDelete() { - return new DeleteTreeResponse.FailedToDelete(); - } - - /** - * Create an instance of {@link CreatePolicy } - * - */ - public CreatePolicy createCreatePolicy() { - return new CreatePolicy(); - } - - /** - * Create an instance of {@link CmisTypeDocumentDefinitionType } - * - */ - public CmisTypeDocumentDefinitionType createCmisTypeDocumentDefinitionType() { - return new CmisTypeDocumentDefinitionType(); - } - - /** - * Create an instance of {@link CmisObjectParentsType } - * - */ - public CmisObjectParentsType createCmisObjectParentsType() { - return new CmisObjectParentsType(); - } - - /** - * Create an instance of {@link CmisPropertyStringDefinitionType } - * - */ - public CmisPropertyStringDefinitionType createCmisPropertyStringDefinitionType() { - return new CmisPropertyStringDefinitionType(); - } - - /** - * Create an instance of {@link DeleteTreeResponse } - * - */ - public DeleteTreeResponse createDeleteTreeResponse() { - return new DeleteTreeResponse(); - } - - /** - * Create an instance of {@link RemoveObjectFromFolder } - * - */ - public RemoveObjectFromFolder createRemoveObjectFromFolder() { - return new RemoveObjectFromFolder(); - } - - /** - * Create an instance of {@link CreateRelationshipResponse } - * - */ - public CreateRelationshipResponse createCreateRelationshipResponse() { - return new CreateRelationshipResponse(); - } - - /** - * Create an instance of {@link CheckOut } - * - */ - public CheckOut createCheckOut() { - return new CheckOut(); - } - - /** - * Create an instance of {@link CmisPropertyIdDefinitionType } - * - */ - public CmisPropertyIdDefinitionType createCmisPropertyIdDefinitionType() { - return new CmisPropertyIdDefinitionType(); - } - - /** - * Create an instance of {@link GetTypeChildrenResponse } - * - */ - public GetTypeChildrenResponse createGetTypeChildrenResponse() { - return new GetTypeChildrenResponse(); - } - - /** - * Create an instance of {@link SetContentStream } - * - */ - public SetContentStream createSetContentStream() { - return new SetContentStream(); - } - - /** - * Create an instance of {@link CmisPermissionMapping } - * - */ - public CmisPermissionMapping createCmisPermissionMapping() { - return new CmisPermissionMapping(); - } - - /** - * Create an instance of {@link Aspects } - * - */ - public Aspects createAspects() { - return new Aspects(); - } - - /** - * Create an instance of {@link GetObjectOfLatestVersion } - * - */ - public GetObjectOfLatestVersion createGetObjectOfLatestVersion() { - return new GetObjectOfLatestVersion(); - } - - /** - * Create an instance of {@link CmisObjectType } - * - */ - public CmisObjectType createCmisObjectType() { - return new CmisObjectType(); - } - - /** - * Create an instance of {@link CmisListOfIdsType } - * - */ - public CmisListOfIdsType createCmisListOfIdsType() { - return new CmisListOfIdsType(); - } - - /** - * Create an instance of {@link GetProperties } - * - */ - public GetProperties createGetProperties() { - return new GetProperties(); - } - - /** - * Create an instance of {@link CmisObjectListType } - * - */ - public CmisObjectListType createCmisObjectListType() { - return new CmisObjectListType(); - } - - /** - * Create an instance of {@link GetCheckedOutDocs } - * - */ - public GetCheckedOutDocs createGetCheckedOutDocs() { - return new GetCheckedOutDocs(); - } - - /** - * Create an instance of {@link QueryResponse } - * - */ - public QueryResponse createQueryResponse() { - return new QueryResponse(); - } - - /** - * Create an instance of {@link ApplyPolicy } - * - */ - public ApplyPolicy createApplyPolicy() { - return new ApplyPolicy(); - } - - /** - * Create an instance of {@link GetTypeDefinitionResponse } - * - */ - public GetTypeDefinitionResponse createGetTypeDefinitionResponse() { - return new GetTypeDefinitionResponse(); - } - - /** - * Create an instance of {@link CmisAccessControlEntryType } - * - */ - public CmisAccessControlEntryType createCmisAccessControlEntryType() { - return new CmisAccessControlEntryType(); - } - - /** - * Create an instance of {@link CmisChoiceDateTime } - * - */ - public CmisChoiceDateTime createCmisChoiceDateTime() { - return new CmisChoiceDateTime(); - } - - /** - * Create an instance of {@link CmisObjectInFolderType } - * - */ - public CmisObjectInFolderType createCmisObjectInFolderType() { - return new CmisObjectInFolderType(); - } - - /** - * Create an instance of {@link DeleteContentStreamResponse } - * - */ - public DeleteContentStreamResponse createDeleteContentStreamResponse() { - return new DeleteContentStreamResponse(); - } - - /** - * Create an instance of {@link CmisExtensionType } - * - */ - public CmisExtensionType createCmisExtensionType() { - return new CmisExtensionType(); - } - - /** - * Create an instance of {@link CmisPropertyUri } - * - */ - public CmisPropertyUri createCmisPropertyUri() { - return new CmisPropertyUri(); - } - - /** - * Create an instance of {@link GetObjectRelationships } - * - */ - public GetObjectRelationships createGetObjectRelationships() { - return new GetObjectRelationships(); - } - - /** - * Create an instance of {@link MoveObject } - * - */ - public MoveObject createMoveObject() { - return new MoveObject(); - } - - /** - * Create an instance of {@link GetAllowableActions } - * - */ - public GetAllowableActions createGetAllowableActions() { - return new GetAllowableActions(); - } - - /** - * Create an instance of {@link GetChildrenResponse } - * - */ - public GetChildrenResponse createGetChildrenResponse() { - return new GetChildrenResponse(); - } - - /** - * Create an instance of {@link GetRenditions } - * - */ - public GetRenditions createGetRenditions() { - return new GetRenditions(); - } - - /** - * Create an instance of {@link CmisObjectInFolderListType } - * - */ - public CmisObjectInFolderListType createCmisObjectInFolderListType() { - return new CmisObjectInFolderListType(); - } - - /** - * Create an instance of {@link CreateFolderResponse } - * - */ - public CreateFolderResponse createCreateFolderResponse() { - return new CreateFolderResponse(); - } - - /** - * Create an instance of {@link GetChildren } - * - */ - public GetChildren createGetChildren() { - return new GetChildren(); - } - - /** - * Create an instance of {@link CreatePolicyResponse } - * - */ - public CreatePolicyResponse createCreatePolicyResponse() { - return new CreatePolicyResponse(); - } - - /** - * Create an instance of {@link CmisChoiceHtml } - * - */ - public CmisChoiceHtml createCmisChoiceHtml() { - return new CmisChoiceHtml(); - } - - /** - * Create an instance of {@link GetObjectRelationshipsResponse } - * - */ - public GetObjectRelationshipsResponse createGetObjectRelationshipsResponse() { - return new GetObjectRelationshipsResponse(); - } - - /** - * Create an instance of {@link GetTypeDescendants } - * - */ - public GetTypeDescendants createGetTypeDescendants() { - return new GetTypeDescendants(); - } - - /** - * Create an instance of {@link CreateDocumentResponse } - * - */ - public CreateDocumentResponse createCreateDocumentResponse() { - return new CreateDocumentResponse(); - } - - /** - * Create an instance of {@link AddObjectToFolder } - * - */ - public AddObjectToFolder createAddObjectToFolder() { - return new AddObjectToFolder(); - } - - /** - * Create an instance of {@link GetPropertiesResponse } - * - */ - public GetPropertiesResponse createGetPropertiesResponse() { - return new GetPropertiesResponse(); - } - - /** - * Create an instance of {@link CheckInResponse } - * - */ - public CheckInResponse createCheckInResponse() { - return new CheckInResponse(); - } - - /** - * Create an instance of {@link CmisChangeEventType } - * - */ - public CmisChangeEventType createCmisChangeEventType() { - return new CmisChangeEventType(); - } - - /** - * Create an instance of {@link CancelCheckOut } - * - */ - public CancelCheckOut createCancelCheckOut() { - return new CancelCheckOut(); - } - - /** - * Create an instance of {@link GetObjectByPathResponse } - * - */ - public GetObjectByPathResponse createGetObjectByPathResponse() { - return new GetObjectByPathResponse(); - } - - /** - * Create an instance of {@link CmisChoiceInteger } - * - */ - public CmisChoiceInteger createCmisChoiceInteger() { - return new CmisChoiceInteger(); - } - - /** - * Create an instance of {@link RemoveObjectFromFolderResponse } - * - */ - public RemoveObjectFromFolderResponse createRemoveObjectFromFolderResponse() { - return new RemoveObjectFromFolderResponse(); - } - - /** - * Create an instance of {@link GetDescendants } - * - */ - public GetDescendants createGetDescendants() { - return new GetDescendants(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisQueryType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", name = "query") - public JAXBElement createQuery(CmisQueryType value) { - return new JAXBElement(_Query_QNAME, CmisQueryType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisFaultType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "cmisFault") - public JAXBElement createCmisFault(CmisFaultType value) { - return new JAXBElement(_CmisFault_QNAME, CmisFaultType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", name = "acl") - public JAXBElement createAcl(CmisAccessControlListType value) { - return new JAXBElement(_Acl_QNAME, CmisAccessControlListType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAllowableActionsType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/core/200908/", name = "allowableActions") - public JAXBElement createAllowableActions(CmisAllowableActionsType value) { - return new JAXBElement(_AllowableActions_QNAME, CmisAllowableActionsType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CreateDocumentFromSource.class) - public JAXBElement createCreateDocumentFromSourceRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CreateDocumentFromSource.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "folderId", scope = CreateDocumentFromSource.class) - public JAXBElement createCreateDocumentFromSourceFolderId(String value) { - return new JAXBElement(_CreateDocumentFromSourceFolderId_QNAME, String.class, CreateDocumentFromSource.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateDocumentFromSource.class) - public JAXBElement createCreateDocumentFromSourceExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateDocumentFromSource.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CreateDocumentFromSource.class) - public JAXBElement createCreateDocumentFromSourceAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CreateDocumentFromSource.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "versioningState", scope = CreateDocumentFromSource.class) - public JAXBElement createCreateDocumentFromSourceVersioningState(EnumVersioningState value) { - return new JAXBElement(_CreateDocumentFromSourceVersioningState_QNAME, EnumVersioningState.class, CreateDocumentFromSource.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumACLPropagation }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "ACLPropagation", scope = ApplyACL.class) - public JAXBElement createApplyACLACLPropagation(EnumACLPropagation value) { - return new JAXBElement(_ApplyACLACLPropagation_QNAME, EnumACLPropagation.class, ApplyACL.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = ApplyACL.class) - public JAXBElement createApplyACLExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, ApplyACL.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetRepositoryInfo.class) - public JAXBElement createGetRepositoryInfoExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetRepositoryInfo.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = ApplyPolicyResponse.class) - public JAXBElement createApplyPolicyResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, ApplyPolicyResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetObject.class) - public JAXBElement createGetObjectIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetObject.class) - public JAXBElement createGetObjectIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeACL", scope = GetObject.class) - public JAXBElement createGetObjectIncludeACL(Boolean value) { - return new JAXBElement(_GetObjectIncludeACL_QNAME, Boolean.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetObject.class) - public JAXBElement createGetObjectRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetObject.class) - public JAXBElement createGetObjectFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetObject.class) - public JAXBElement createGetObjectExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePolicyIds", scope = GetObject.class) - public JAXBElement createGetObjectIncludePolicyIds(Boolean value) { - return new JAXBElement(_GetObjectIncludePolicyIds_QNAME, Boolean.class, GetObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "allVersions", scope = DeleteObject.class) - public JAXBElement createDeleteObjectAllVersions(Boolean value) { - return new JAXBElement(_DeleteObjectAllVersions_QNAME, Boolean.class, DeleteObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = DeleteObject.class) - public JAXBElement createDeleteObjectExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, DeleteObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateDocumentFromSourceResponse.class) - public JAXBElement createCreateDocumentFromSourceResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateDocumentFromSourceResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = DeleteObjectResponse.class) - public JAXBElement createDeleteObjectResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, DeleteObjectResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = RemovePolicyResponse.class) - public JAXBElement createRemovePolicyResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, RemovePolicyResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = Query.class) - public JAXBElement createQuerySkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = Query.class) - public JAXBElement createQueryMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = Query.class) - public JAXBElement createQueryIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = Query.class) - public JAXBElement createQueryIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = Query.class) - public JAXBElement createQueryRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = Query.class) - public JAXBElement createQueryExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "searchAllVersions", scope = Query.class) - public JAXBElement createQuerySearchAllVersions(Boolean value) { - return new JAXBElement(_QuerySearchAllVersions_QNAME, Boolean.class, Query.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CheckIn.class) - public JAXBElement createCheckInRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "contentStream", scope = CheckIn.class) - public JAXBElement createCheckInContentStream(CmisContentStreamType value) { - return new JAXBElement(_CheckInContentStream_QNAME, CmisContentStreamType.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "major", scope = CheckIn.class) - public JAXBElement createCheckInMajor(Boolean value) { - return new JAXBElement(_CheckInMajor_QNAME, Boolean.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisPropertiesType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "properties", scope = CheckIn.class) - public JAXBElement createCheckInProperties(CmisPropertiesType value) { - return new JAXBElement(_CheckInProperties_QNAME, CmisPropertiesType.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CheckIn.class) - public JAXBElement createCheckInExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CheckIn.class) - public JAXBElement createCheckInAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "checkinComment", scope = CheckIn.class) - public JAXBElement createCheckInCheckinComment(String value) { - return new JAXBElement(_CheckInCheckinComment_QNAME, String.class, CheckIn.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeACL", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesIncludeACL(Boolean value) { - return new JAXBElement(_GetObjectIncludeACL_QNAME, Boolean.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeProperties", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesIncludeProperties(Boolean value) { - return new JAXBElement(_GetContentChangesIncludeProperties_QNAME, Boolean.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "changeLogToken", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesChangeLogToken(String value) { - return new JAXBElement(_GetContentChangesChangeLogToken_QNAME, String.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePolicyIds", scope = GetContentChanges.class) - public JAXBElement createGetContentChangesIncludePolicyIds(Boolean value) { - return new JAXBElement(_GetObjectIncludePolicyIds_QNAME, Boolean.class, GetContentChanges.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CreateFolder.class) - public JAXBElement createCreateFolderRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CreateFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateFolder.class) - public JAXBElement createCreateFolderExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CreateFolder.class) - public JAXBElement createCreateFolderAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CreateFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CreatePolicy.class) - public JAXBElement createCreatePolicyRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CreatePolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "folderId", scope = CreatePolicy.class) - public JAXBElement createCreatePolicyFolderId(String value) { - return new JAXBElement(_CreateDocumentFromSourceFolderId_QNAME, String.class, CreatePolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreatePolicy.class) - public JAXBElement createCreatePolicyExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreatePolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CreatePolicy.class) - public JAXBElement createCreatePolicyAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CreatePolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "folderId", scope = RemoveObjectFromFolder.class) - public JAXBElement createRemoveObjectFromFolderFolderId(String value) { - return new JAXBElement(_CreateDocumentFromSourceFolderId_QNAME, String.class, RemoveObjectFromFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = RemoveObjectFromFolder.class) - public JAXBElement createRemoveObjectFromFolderExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, RemoveObjectFromFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateRelationshipResponse.class) - public JAXBElement createCreateRelationshipResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateRelationshipResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "depth", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeDepth(BigInteger value) { - return new JAXBElement(_GetFolderTreeDepth_QNAME, BigInteger.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePathSegment", scope = GetFolderTree.class) - public JAXBElement createGetFolderTreeIncludePathSegment(Boolean value) { - return new JAXBElement(_GetFolderTreeIncludePathSegment_QNAME, Boolean.class, GetFolderTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CheckOut.class) - public JAXBElement createCheckOutExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CheckOut.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelativePathSegment", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsIncludeRelativePathSegment(Boolean value) { - return new JAXBElement(_GetObjectParentsIncludeRelativePathSegment_QNAME, Boolean.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetObjectParents.class) - public JAXBElement createGetObjectParentsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetObjectParents.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = DeleteContentStream.class) - public JAXBElement createDeleteContentStreamExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, DeleteContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "changeToken", scope = SetContentStream.class) - public JAXBElement createSetContentStreamChangeToken(String value) { - return new JAXBElement(_SetContentStreamChangeToken_QNAME, String.class, SetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "overwriteFlag", scope = SetContentStream.class) - public JAXBElement createSetContentStreamOverwriteFlag(Boolean value) { - return new JAXBElement(_SetContentStreamOverwriteFlag_QNAME, Boolean.class, SetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = SetContentStream.class) - public JAXBElement createSetContentStreamExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, SetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeACL", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionIncludeACL(Boolean value) { - return new JAXBElement(_GetObjectIncludeACL_QNAME, Boolean.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePolicyIds", scope = GetObjectOfLatestVersion.class) - public JAXBElement createGetObjectOfLatestVersionIncludePolicyIds(Boolean value) { - return new JAXBElement(_GetObjectIncludePolicyIds_QNAME, Boolean.class, GetObjectOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = AddObjectToFolderResponse.class) - public JAXBElement createAddObjectToFolderResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, AddObjectToFolderResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetFolderParent.class) - public JAXBElement createGetFolderParentExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetFolderParent.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = GetTypeChildren.class) - public JAXBElement createGetTypeChildrenSkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, GetTypeChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetTypeChildren.class) - public JAXBElement createGetTypeChildrenMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetTypeChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "typeId", scope = GetTypeChildren.class) - public JAXBElement createGetTypeChildrenTypeId(String value) { - return new JAXBElement(_GetTypeChildrenTypeId_QNAME, String.class, GetTypeChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePropertyDefinitions", scope = GetTypeChildren.class) - public JAXBElement createGetTypeChildrenIncludePropertyDefinitions(Boolean value) { - return new JAXBElement(_GetTypeChildrenIncludePropertyDefinitions_QNAME, Boolean.class, GetTypeChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetTypeChildren.class) - public JAXBElement createGetTypeChildrenExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetTypeChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetProperties.class) - public JAXBElement createGetPropertiesFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetProperties.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetProperties.class) - public JAXBElement createGetPropertiesExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetProperties.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsSkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "folderId", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsFolderId(String value) { - return new JAXBElement(_CreateDocumentFromSourceFolderId_QNAME, String.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "orderBy", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsOrderBy(String value) { - return new JAXBElement(_GetCheckedOutDocsOrderBy_QNAME, String.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetCheckedOutDocs.class) - public JAXBElement createGetCheckedOutDocsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetCheckedOutDocs.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CheckOutResponse.class) - public JAXBElement createCheckOutResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CheckOutResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = ApplyPolicy.class) - public JAXBElement createApplyPolicyExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, ApplyPolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = SetContentStreamResponse.class) - public JAXBElement createSetContentStreamResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, SetContentStreamResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = DeleteContentStreamResponse.class) - public JAXBElement createDeleteContentStreamResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, DeleteContentStreamResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetTypeDefinition.class) - public JAXBElement createGetTypeDefinitionExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetTypeDefinition.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = RemovePolicy.class) - public JAXBElement createRemovePolicyExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, RemovePolicy.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = MoveObjectResponse.class) - public JAXBElement createMoveObjectResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, MoveObjectResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "offset", scope = GetContentStream.class) - public JAXBElement createGetContentStreamOffset(BigInteger value) { - return new JAXBElement(_GetContentStreamOffset_QNAME, BigInteger.class, GetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "length", scope = GetContentStream.class) - public JAXBElement createGetContentStreamLength(BigInteger value) { - return new JAXBElement(_GetContentStreamLength_QNAME, BigInteger.class, GetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetContentStream.class) - public JAXBElement createGetContentStreamExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "streamId", scope = GetContentStream.class) - public JAXBElement createGetContentStreamStreamId(String value) { - return new JAXBElement(_GetContentStreamStreamId_QNAME, String.class, GetContentStream.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsSkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "typeId", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsTypeId(String value) { - return new JAXBElement(_GetTypeChildrenTypeId_QNAME, String.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumRelationshipDirection }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "relationshipDirection", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsRelationshipDirection(EnumRelationshipDirection value) { - return new JAXBElement(_GetObjectRelationshipsRelationshipDirection_QNAME, EnumRelationshipDirection.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetObjectRelationships.class) - public JAXBElement createGetObjectRelationshipsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetObjectRelationships.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeACL", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathIncludeACL(Boolean value) { - return new JAXBElement(_GetObjectIncludeACL_QNAME, Boolean.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePolicyIds", scope = GetObjectByPath.class) - public JAXBElement createGetObjectByPathIncludePolicyIds(Boolean value) { - return new JAXBElement(_GetObjectIncludePolicyIds_QNAME, Boolean.class, GetObjectByPath.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = MoveObject.class) - public JAXBElement createMoveObjectExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, MoveObject.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetAllowableActions.class) - public JAXBElement createGetAllowableActionsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetAllowableActions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "allVersions", scope = DeleteTree.class) - public JAXBElement createDeleteTreeAllVersions(Boolean value) { - return new JAXBElement(_DeleteObjectAllVersions_QNAME, Boolean.class, DeleteTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = DeleteTree.class) - public JAXBElement createDeleteTreeExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, DeleteTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "continueOnFailure", scope = DeleteTree.class) - public JAXBElement createDeleteTreeContinueOnFailure(Boolean value) { - return new JAXBElement(_DeleteTreeContinueOnFailure_QNAME, Boolean.class, DeleteTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumUnfileObject }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "unfileObjects", scope = DeleteTree.class) - public JAXBElement createDeleteTreeUnfileObjects(EnumUnfileObject value) { - return new JAXBElement(_DeleteTreeUnfileObjects_QNAME, EnumUnfileObject.class, DeleteTree.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = UpdatePropertiesResponse.class) - public JAXBElement createUpdatePropertiesResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, UpdatePropertiesResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = GetRenditions.class) - public JAXBElement createGetRenditionsSkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, GetRenditions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetRenditions.class) - public JAXBElement createGetRenditionsMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetRenditions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetRenditions.class) - public JAXBElement createGetRenditionsRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetRenditions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetRenditions.class) - public JAXBElement createGetRenditionsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetRenditions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CancelCheckOutResponse.class) - public JAXBElement createCancelCheckOutResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CancelCheckOutResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "onlyBasicPermissions", scope = GetACL.class) - public JAXBElement createGetACLOnlyBasicPermissions(Boolean value) { - return new JAXBElement(_GetACLOnlyBasicPermissions_QNAME, Boolean.class, GetACL.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetACL.class) - public JAXBElement createGetACLExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetACL.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetAppliedPolicies.class) - public JAXBElement createGetAppliedPoliciesFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetAppliedPolicies.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetAppliedPolicies.class) - public JAXBElement createGetAppliedPoliciesExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetAppliedPolicies.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "changeToken", scope = UpdateProperties.class) - public JAXBElement createUpdatePropertiesChangeToken(String value) { - return new JAXBElement(_SetContentStreamChangeToken_QNAME, String.class, UpdateProperties.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = UpdateProperties.class) - public JAXBElement createUpdatePropertiesExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, UpdateProperties.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetAllVersions.class) - public JAXBElement createGetAllVersionsIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetAllVersions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetAllVersions.class) - public JAXBElement createGetAllVersionsFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetAllVersions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetAllVersions.class) - public JAXBElement createGetAllVersionsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetAllVersions.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateFolderResponse.class) - public JAXBElement createCreateFolderResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateFolderResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "skipCount", scope = GetChildren.class) - public JAXBElement createGetChildrenSkipCount(BigInteger value) { - return new JAXBElement(_QuerySkipCount_QNAME, BigInteger.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "maxItems", scope = GetChildren.class) - public JAXBElement createGetChildrenMaxItems(BigInteger value) { - return new JAXBElement(_QueryMaxItems_QNAME, BigInteger.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetChildren.class) - public JAXBElement createGetChildrenIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetChildren.class) - public JAXBElement createGetChildrenIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetChildren.class) - public JAXBElement createGetChildrenRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetChildren.class) - public JAXBElement createGetChildrenFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "orderBy", scope = GetChildren.class) - public JAXBElement createGetChildrenOrderBy(String value) { - return new JAXBElement(_GetCheckedOutDocsOrderBy_QNAME, String.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetChildren.class) - public JAXBElement createGetChildrenExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePathSegment", scope = GetChildren.class) - public JAXBElement createGetChildrenIncludePathSegment(Boolean value) { - return new JAXBElement(_GetFolderTreeIncludePathSegment_QNAME, Boolean.class, GetChildren.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CreateDocument.class) - public JAXBElement createCreateDocumentRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisContentStreamType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "contentStream", scope = CreateDocument.class) - public JAXBElement createCreateDocumentContentStream(CmisContentStreamType value) { - return new JAXBElement(_CheckInContentStream_QNAME, CmisContentStreamType.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "folderId", scope = CreateDocument.class) - public JAXBElement createCreateDocumentFolderId(String value) { - return new JAXBElement(_CreateDocumentFromSourceFolderId_QNAME, String.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateDocument.class) - public JAXBElement createCreateDocumentExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CreateDocument.class) - public JAXBElement createCreateDocumentAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumVersioningState }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "versioningState", scope = CreateDocument.class) - public JAXBElement createCreateDocumentVersioningState(EnumVersioningState value) { - return new JAXBElement(_CreateDocumentFromSourceVersioningState_QNAME, EnumVersioningState.class, CreateDocument.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreatePolicyResponse.class) - public JAXBElement createCreatePolicyResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreatePolicyResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "typeId", scope = GetTypeDescendants.class) - public JAXBElement createGetTypeDescendantsTypeId(String value) { - return new JAXBElement(_GetTypeChildrenTypeId_QNAME, String.class, GetTypeDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePropertyDefinitions", scope = GetTypeDescendants.class) - public JAXBElement createGetTypeDescendantsIncludePropertyDefinitions(Boolean value) { - return new JAXBElement(_GetTypeChildrenIncludePropertyDefinitions_QNAME, Boolean.class, GetTypeDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "depth", scope = GetTypeDescendants.class) - public JAXBElement createGetTypeDescendantsDepth(BigInteger value) { - return new JAXBElement(_GetFolderTreeDepth_QNAME, BigInteger.class, GetTypeDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetTypeDescendants.class) - public JAXBElement createGetTypeDescendantsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetTypeDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "removeACEs", scope = CreateRelationship.class) - public JAXBElement createCreateRelationshipRemoveACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceRemoveACEs_QNAME, CmisAccessControlListType.class, CreateRelationship.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateRelationship.class) - public JAXBElement createCreateRelationshipExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateRelationship.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisAccessControlListType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "addACEs", scope = CreateRelationship.class) - public JAXBElement createCreateRelationshipAddACEs(CmisAccessControlListType value) { - return new JAXBElement(_CreateDocumentFromSourceAddACEs_QNAME, CmisAccessControlListType.class, CreateRelationship.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetPropertiesOfLatestVersion.class) - public JAXBElement createGetPropertiesOfLatestVersionFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetPropertiesOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetPropertiesOfLatestVersion.class) - public JAXBElement createGetPropertiesOfLatestVersionExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetPropertiesOfLatestVersion.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CreateDocumentResponse.class) - public JAXBElement createCreateDocumentResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CreateDocumentResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetRepositories.class) - public JAXBElement createGetRepositoriesExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetRepositories.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = AddObjectToFolder.class) - public JAXBElement createAddObjectToFolderExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, AddObjectToFolder.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CheckInResponse.class) - public JAXBElement createCheckInResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CheckInResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = CancelCheckOut.class) - public JAXBElement createCancelCheckOutExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, CancelCheckOut.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = RemoveObjectFromFolderResponse.class) - public JAXBElement createRemoveObjectFromFolderResponseExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, RemoveObjectFromFolderResponse.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeRelationships", scope = GetDescendants.class) - public JAXBElement createGetDescendantsIncludeRelationships(EnumIncludeRelationships value) { - return new JAXBElement(_GetObjectIncludeRelationships_QNAME, EnumIncludeRelationships.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includeAllowableActions", scope = GetDescendants.class) - public JAXBElement createGetDescendantsIncludeAllowableActions(Boolean value) { - return new JAXBElement(_GetObjectIncludeAllowableActions_QNAME, Boolean.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "renditionFilter", scope = GetDescendants.class) - public JAXBElement createGetDescendantsRenditionFilter(String value) { - return new JAXBElement(_GetObjectRenditionFilter_QNAME, String.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "filter", scope = GetDescendants.class) - public JAXBElement createGetDescendantsFilter(String value) { - return new JAXBElement(_GetObjectFilter_QNAME, String.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "depth", scope = GetDescendants.class) - public JAXBElement createGetDescendantsDepth(BigInteger value) { - return new JAXBElement(_GetFolderTreeDepth_QNAME, BigInteger.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "extension", scope = GetDescendants.class) - public JAXBElement createGetDescendantsExtension(CmisExtensionType value) { - return new JAXBElement(_CreateDocumentFromSourceExtension_QNAME, CmisExtensionType.class, GetDescendants.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", name = "includePathSegment", scope = GetDescendants.class) - public JAXBElement createGetDescendantsIncludePathSegment(Boolean value) { - return new JAXBElement(_GetFolderTreeIncludePathSegment_QNAME, Boolean.class, GetDescendants.class, value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ObjectService.java b/source/generated/org/alfresco/repo/cmis/ws/ObjectService.java deleted file mode 100644 index 10eb31c46a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ObjectService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "ObjectService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class ObjectService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "ObjectService"); - public final static QName ObjectServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "ObjectServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public ObjectService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public ObjectService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public ObjectService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns ObjectServicePort - */ - @WebEndpoint(name = "ObjectServicePort") - public ObjectServicePort getObjectServicePort() { - return super.getPort(ObjectServicePort, ObjectServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns ObjectServicePort - */ - @WebEndpoint(name = "ObjectServicePort") - public ObjectServicePort getObjectServicePort(WebServiceFeature... features) { - return super.getPort(ObjectServicePort, ObjectServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/ObjectServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/ObjectServicePort.java deleted file mode 100644 index b29c18ff5c..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/ObjectServicePort.java +++ /dev/null @@ -1,351 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebParam.Mode; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "ObjectServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface ObjectServicePort { - - @WebResult(name = "object", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getObject", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObject") - @ResponseWrapper(localName = "getObjectResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectType getObject( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePolicyIds", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePolicyIds, - @WebParam(name = "includeACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeACL, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getProperties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetProperties") - @ResponseWrapper(localName = "getPropertiesResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetPropertiesResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisPropertiesType getProperties( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "contentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getContentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetContentStream") - @ResponseWrapper(localName = "getContentStreamResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetContentStreamResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisContentStreamType getContentStream( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "streamId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String streamId, - @WebParam(name = "offset", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger offset, - @WebParam(name = "length", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger length, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "allowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAllowableActions") - @ResponseWrapper(localName = "getAllowableActionsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAllowableActionsResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisAllowableActionsType getAllowableActions( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @RequestWrapper(localName = "deleteContentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteContentStream") - @ResponseWrapper(localName = "deleteContentStreamResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteContentStreamResponse") - @WebMethod - public void deleteContentStream( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "changeToken", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder changeToken, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "deleteObject", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteObject") - @ResponseWrapper(localName = "deleteObjectResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteObjectResponse") - @WebMethod - public void deleteObject( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "allVersions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean allVersions, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "createRelationship", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateRelationship") - @ResponseWrapper(localName = "createRelationshipResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateRelationshipResponse") - @WebMethod - public void createRelationship( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId - ) throws CmisException; - - @RequestWrapper(localName = "createDocumentFromSource", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateDocumentFromSource") - @ResponseWrapper(localName = "createDocumentFromSourceResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateDocumentFromSourceResponse") - @WebMethod - public void createDocumentFromSource( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "sourceId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String sourceId, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "versioningState", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumVersioningState versioningState, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId - ) throws CmisException; - - @RequestWrapper(localName = "updateProperties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.UpdateProperties") - @ResponseWrapper(localName = "updatePropertiesResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.UpdatePropertiesResponse") - @WebMethod - public void updateProperties( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "changeToken", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder changeToken, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "moveObject", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.MoveObject") - @ResponseWrapper(localName = "moveObjectResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.MoveObjectResponse") - @WebMethod - public void moveObject( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(name = "targetFolderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String targetFolderId, - @WebParam(name = "sourceFolderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String sourceFolderId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "createDocument", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateDocument") - @ResponseWrapper(localName = "createDocumentResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateDocumentResponse") - @WebMethod - public void createDocument( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "contentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisContentStreamType contentStream, - @WebParam(name = "versioningState", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumVersioningState versioningState, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId - ) throws CmisException; - - @WebResult(name = "failedToDelete", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "deleteTree", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteTree") - @ResponseWrapper(localName = "deleteTreeResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.DeleteTreeResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.DeleteTreeResponse.FailedToDelete deleteTree( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "allVersions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean allVersions, - @WebParam(name = "unfileObjects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumUnfileObject unfileObjects, - @WebParam(name = "continueOnFailure", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean continueOnFailure, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "renditions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getRenditions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRenditions") - @ResponseWrapper(localName = "getRenditionsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRenditionsResponse") - @WebMethod - public java.util.List getRenditions( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "skipCount", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger skipCount, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "object", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getObjectByPath", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectByPath") - @ResponseWrapper(localName = "getObjectByPathResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectByPathResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectType getObjectByPath( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "path", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String path, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePolicyIds", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePolicyIds, - @WebParam(name = "includeACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeACL, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @RequestWrapper(localName = "createFolder", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateFolder") - @ResponseWrapper(localName = "createFolderResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreateFolderResponse") - @WebMethod - public void createFolder( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId - ) throws CmisException; - - @RequestWrapper(localName = "createPolicy", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreatePolicy") - @ResponseWrapper(localName = "createPolicyResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CreatePolicyResponse") - @WebMethod - public void createPolicy( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "folderId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String folderId, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId - ) throws CmisException; - - @RequestWrapper(localName = "setContentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.SetContentStream") - @ResponseWrapper(localName = "setContentStreamResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.SetContentStreamResponse") - @WebMethod - public void setContentStream( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(name = "overwriteFlag", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean overwriteFlag, - @WebParam(mode = WebParam.Mode.INOUT, name = "changeToken", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder changeToken, - @WebParam(name = "contentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisContentStreamType contentStream, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/PolicyService.java b/source/generated/org/alfresco/repo/cmis/ws/PolicyService.java deleted file mode 100644 index e195e2a834..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/PolicyService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "PolicyService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class PolicyService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "PolicyService"); - public final static QName PolicyServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "PolicyServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public PolicyService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public PolicyService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public PolicyService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns PolicyServicePort - */ - @WebEndpoint(name = "PolicyServicePort") - public PolicyServicePort getPolicyServicePort() { - return super.getPort(PolicyServicePort, PolicyServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns PolicyServicePort - */ - @WebEndpoint(name = "PolicyServicePort") - public PolicyServicePort getPolicyServicePort(WebServiceFeature... features) { - return super.getPort(PolicyServicePort, PolicyServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/PolicyServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/PolicyServicePort.java deleted file mode 100644 index 2fba685d18..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/PolicyServicePort.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebParam.Mode; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "PolicyServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface PolicyServicePort { - - @RequestWrapper(localName = "removePolicy", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.RemovePolicy") - @ResponseWrapper(localName = "removePolicyResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.RemovePolicyResponse") - @WebMethod - public void removePolicy( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "policyId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String policyId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @RequestWrapper(localName = "applyPolicy", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.ApplyPolicy") - @ResponseWrapper(localName = "applyPolicyResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.ApplyPolicyResponse") - @WebMethod - public void applyPolicy( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "policyId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String policyId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getAppliedPolicies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAppliedPolicies") - @ResponseWrapper(localName = "getAppliedPoliciesResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAppliedPoliciesResponse") - @WebMethod - public java.util.List getAppliedPolicies( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/Query.java b/source/generated/org/alfresco/repo/cmis/ws/Query.java deleted file mode 100644 index 5aed5fcd6a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/Query.java +++ /dev/null @@ -1,316 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.math.BigInteger; -import java.util.HashMap; -import java.util.Map; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="statement" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="searchAllVersions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeAllowableActions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="includeRelationships" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}enumIncludeRelationships" minOccurs="0"/>
- *         <element name="renditionFilter" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="maxItems" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="skipCount" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *       <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "statement", - "searchAllVersions", - "includeAllowableActions", - "includeRelationships", - "renditionFilter", - "maxItems", - "skipCount", - "extension" -}) -@XmlRootElement(name = "query") -public class Query { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String statement; - @XmlElementRef(name = "searchAllVersions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement searchAllVersions; - @XmlElementRef(name = "includeAllowableActions", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeAllowableActions; - @XmlElementRef(name = "includeRelationships", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement includeRelationships; - @XmlElementRef(name = "renditionFilter", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement renditionFilter; - @XmlElementRef(name = "maxItems", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement maxItems; - @XmlElementRef(name = "skipCount", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement skipCount; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - @XmlAnyAttribute - private Map otherAttributes = new HashMap(); - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the statement property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStatement() { - return statement; - } - - /** - * Sets the value of the statement property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStatement(String value) { - this.statement = value; - } - - /** - * Gets the value of the searchAllVersions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getSearchAllVersions() { - return searchAllVersions; - } - - /** - * Sets the value of the searchAllVersions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setSearchAllVersions(JAXBElement value) { - this.searchAllVersions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeAllowableActions property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getIncludeAllowableActions() { - return includeAllowableActions; - } - - /** - * Sets the value of the includeAllowableActions property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setIncludeAllowableActions(JAXBElement value) { - this.includeAllowableActions = ((JAXBElement ) value); - } - - /** - * Gets the value of the includeRelationships property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public JAXBElement getIncludeRelationships() { - return includeRelationships; - } - - /** - * Sets the value of the includeRelationships property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link EnumIncludeRelationships }{@code >} - * - */ - public void setIncludeRelationships(JAXBElement value) { - this.includeRelationships = ((JAXBElement ) value); - } - - /** - * Gets the value of the renditionFilter property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getRenditionFilter() { - return renditionFilter; - } - - /** - * Sets the value of the renditionFilter property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setRenditionFilter(JAXBElement value) { - this.renditionFilter = ((JAXBElement ) value); - } - - /** - * Gets the value of the maxItems property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getMaxItems() { - return maxItems; - } - - /** - * Sets the value of the maxItems property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setMaxItems(JAXBElement value) { - this.maxItems = ((JAXBElement ) value); - } - - /** - * Gets the value of the skipCount property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public JAXBElement getSkipCount() { - return skipCount; - } - - /** - * Sets the value of the skipCount property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * - */ - public void setSkipCount(JAXBElement value) { - this.skipCount = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - *

- * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/QueryResponse.java b/source/generated/org/alfresco/repo/cmis/ws/QueryResponse.java deleted file mode 100644 index 12aa12ed3a..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/QueryResponse.java +++ /dev/null @@ -1,64 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objects" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisObjectListType"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objects" -}) -@XmlRootElement(name = "queryResponse") -public class QueryResponse { - - @XmlElement(required = true) - protected CmisObjectListType objects; - - /** - * Gets the value of the objects property. - * - * @return - * possible object is - * {@link CmisObjectListType } - * - */ - public CmisObjectListType getObjects() { - return objects; - } - - /** - * Sets the value of the objects property. - * - * @param value - * allowed object is - * {@link CmisObjectListType } - * - */ - public void setObjects(CmisObjectListType value) { - this.objects = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RelationshipService.java b/source/generated/org/alfresco/repo/cmis/ws/RelationshipService.java deleted file mode 100644 index 37dc1aeeb1..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RelationshipService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "RelationshipService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class RelationshipService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "RelationshipService"); - public final static QName RelationshipServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "RelationshipServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public RelationshipService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public RelationshipService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public RelationshipService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns RelationshipServicePort - */ - @WebEndpoint(name = "RelationshipServicePort") - public RelationshipServicePort getRelationshipServicePort() { - return super.getPort(RelationshipServicePort, RelationshipServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns RelationshipServicePort - */ - @WebEndpoint(name = "RelationshipServicePort") - public RelationshipServicePort getRelationshipServicePort(WebServiceFeature... features) { - return super.getPort(RelationshipServicePort, RelationshipServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RelationshipServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/RelationshipServicePort.java deleted file mode 100644 index beffbde411..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RelationshipServicePort.java +++ /dev/null @@ -1,48 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "RelationshipServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface RelationshipServicePort { - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getObjectRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectRelationships") - @ResponseWrapper(localName = "getObjectRelationshipsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectRelationshipsResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectListType getObjectRelationships( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "includeSubRelationshipTypes", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeSubRelationshipTypes, - @WebParam(name = "relationshipDirection", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumRelationshipDirection relationshipDirection, - @WebParam(name = "typeId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String typeId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "skipCount", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger skipCount, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolder.java b/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolder.java deleted file mode 100644 index 357f08fde5..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolder.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="folderId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "folderId", - "extension" -}) -@XmlRootElement(name = "removeObjectFromFolder") -public class RemoveObjectFromFolder { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "folderId", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement folderId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the folderId property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getFolderId() { - return folderId; - } - - /** - * Sets the value of the folderId property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setFolderId(JAXBElement value) { - this.folderId = ((JAXBElement ) value); - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolderResponse.java b/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolderResponse.java deleted file mode 100644 index be7e02a55e..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RemoveObjectFromFolderResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "removeObjectFromFolderResponse") -public class RemoveObjectFromFolderResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RemovePolicy.java b/source/generated/org/alfresco/repo/cmis/ws/RemovePolicy.java deleted file mode 100644 index daf089c6a8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RemovePolicy.java +++ /dev/null @@ -1,150 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="policyId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "policyId", - "objectId", - "extension" -}) -@XmlRootElement(name = "removePolicy") -public class RemovePolicy { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String policyId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the policyId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPolicyId() { - return policyId; - } - - /** - * Sets the value of the policyId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPolicyId(String value) { - this.policyId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RemovePolicyResponse.java b/source/generated/org/alfresco/repo/cmis/ws/RemovePolicyResponse.java deleted file mode 100644 index ed99153cbb..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RemovePolicyResponse.java +++ /dev/null @@ -1,65 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "extension" -}) -@XmlRootElement(name = "removePolicyResponse") -public class RemovePolicyResponse { - - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RepositoryService.java b/source/generated/org/alfresco/repo/cmis/ws/RepositoryService.java deleted file mode 100644 index 500cfb2868..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RepositoryService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "RepositoryService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class RepositoryService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "RepositoryService"); - public final static QName RepositoryServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "RepositoryServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public RepositoryService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public RepositoryService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public RepositoryService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns RepositoryServicePort - */ - @WebEndpoint(name = "RepositoryServicePort") - public RepositoryServicePort getRepositoryServicePort() { - return super.getPort(RepositoryServicePort, RepositoryServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns RepositoryServicePort - */ - @WebEndpoint(name = "RepositoryServicePort") - public RepositoryServicePort getRepositoryServicePort(WebServiceFeature... features) { - return super.getPort(RepositoryServicePort, RepositoryServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/RepositoryServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/RepositoryServicePort.java deleted file mode 100644 index da46b28ae3..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/RepositoryServicePort.java +++ /dev/null @@ -1,90 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "RepositoryServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface RepositoryServicePort { - - @WebResult(name = "type", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getTypeDefinition", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeDefinition") - @ResponseWrapper(localName = "getTypeDefinitionResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeDefinitionResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisTypeDefinitionType getTypeDefinition( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "typeId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String typeId, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "types", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getTypeDescendants", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeDescendants") - @ResponseWrapper(localName = "getTypeDescendantsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeDescendantsResponse") - @WebMethod - public java.util.List getTypeDescendants( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "typeId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String typeId, - @WebParam(name = "depth", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger depth, - @WebParam(name = "includePropertyDefinitions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePropertyDefinitions, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "types", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getTypeChildren", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeChildren") - @ResponseWrapper(localName = "getTypeChildrenResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetTypeChildrenResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisTypeDefinitionListType getTypeChildren( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "typeId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String typeId, - @WebParam(name = "includePropertyDefinitions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePropertyDefinitions, - @WebParam(name = "maxItems", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger maxItems, - @WebParam(name = "skipCount", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.math.BigInteger skipCount, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "repositoryInfo", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getRepositoryInfo", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRepositoryInfo") - @ResponseWrapper(localName = "getRepositoryInfoResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRepositoryInfoResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisRepositoryInfoType getRepositoryInfo( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "repositories", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getRepositories", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRepositories") - @ResponseWrapper(localName = "getRepositoriesResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetRepositoriesResponse") - @WebMethod - public java.util.List getRepositories( - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/SetAspects.java b/source/generated/org/alfresco/repo/cmis/ws/SetAspects.java deleted file mode 100644 index cc1a804327..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/SetAspects.java +++ /dev/null @@ -1,132 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="aspectsToAdd" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="aspectsToRemove" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "aspectsToAdd", - "aspectsToRemove", - "properties" -}) -@XmlRootElement(name = "setAspects", namespace = "http://www.alfresco.org") -public class SetAspects { - - @XmlElement(namespace = "http://www.alfresco.org") - protected List aspectsToAdd; - @XmlElement(namespace = "http://www.alfresco.org") - protected List aspectsToRemove; - @XmlElement(namespace = "http://www.alfresco.org") - protected CmisPropertiesType properties; - - /** - * Gets the value of the aspectsToAdd property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the aspectsToAdd property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAspectsToAdd().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getAspectsToAdd() { - if (aspectsToAdd == null) { - aspectsToAdd = new ArrayList(); - } - return this.aspectsToAdd; - } - - /** - * Gets the value of the aspectsToRemove property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the aspectsToRemove property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getAspectsToRemove().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List getAspectsToRemove() { - if (aspectsToRemove == null) { - aspectsToRemove = new ArrayList(); - } - return this.aspectsToRemove; - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/SetContentStream.java b/source/generated/org/alfresco/repo/cmis/ws/SetContentStream.java deleted file mode 100644 index cc9dcfcf02..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/SetContentStream.java +++ /dev/null @@ -1,206 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="overwriteFlag" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="contentStream" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisContentStreamType"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "overwriteFlag", - "changeToken", - "contentStream", - "extension" -}) -@XmlRootElement(name = "setContentStream") -public class SetContentStream { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "overwriteFlag", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement overwriteFlag; - @XmlElementRef(name = "changeToken", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement changeToken; - @XmlElement(required = true) - protected CmisContentStreamType contentStream; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the overwriteFlag property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public JAXBElement getOverwriteFlag() { - return overwriteFlag; - } - - /** - * Sets the value of the overwriteFlag property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link Boolean }{@code >} - * - */ - public void setOverwriteFlag(JAXBElement value) { - this.overwriteFlag = ((JAXBElement ) value); - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setChangeToken(JAXBElement value) { - this.changeToken = ((JAXBElement ) value); - } - - /** - * Gets the value of the contentStream property. - * - * @return - * possible object is - * {@link CmisContentStreamType } - * - */ - public CmisContentStreamType getContentStream() { - return contentStream; - } - - /** - * Sets the value of the contentStream property. - * - * @param value - * allowed object is - * {@link CmisContentStreamType } - * - */ - public void setContentStream(CmisContentStreamType value) { - this.contentStream = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/SetContentStreamResponse.java b/source/generated/org/alfresco/repo/cmis/ws/SetContentStreamResponse.java deleted file mode 100644 index 436527a4e4..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/SetContentStreamResponse.java +++ /dev/null @@ -1,121 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "changeToken", - "extension" -}) -@XmlRootElement(name = "setContentStreamResponse") -public class SetContentStreamResponse { - - @XmlElement(required = true) - protected String objectId; - protected String changeToken; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setChangeToken(String value) { - this.changeToken = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/UpdateProperties.java b/source/generated/org/alfresco/repo/cmis/ws/UpdateProperties.java deleted file mode 100644 index fce06f8453..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/UpdateProperties.java +++ /dev/null @@ -1,178 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="repositoryId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="properties" type="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisPropertiesType"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "repositoryId", - "objectId", - "changeToken", - "properties", - "extension" -}) -@XmlRootElement(name = "updateProperties") -public class UpdateProperties { - - @XmlElement(required = true) - protected String repositoryId; - @XmlElement(required = true) - protected String objectId; - @XmlElementRef(name = "changeToken", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement changeToken; - @XmlElement(required = true) - protected CmisPropertiesType properties; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the repositoryId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepositoryId() { - return repositoryId; - } - - /** - * Sets the value of the repositoryId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepositoryId(String value) { - this.repositoryId = value; - } - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public JAXBElement getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link String }{@code >} - * - */ - public void setChangeToken(JAXBElement value) { - this.changeToken = ((JAXBElement ) value); - } - - /** - * Gets the value of the properties property. - * - * @return - * possible object is - * {@link CmisPropertiesType } - * - */ - public CmisPropertiesType getProperties() { - return properties; - } - - /** - * Sets the value of the properties property. - * - * @param value - * allowed object is - * {@link CmisPropertiesType } - * - */ - public void setProperties(CmisPropertiesType value) { - this.properties = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/UpdatePropertiesResponse.java b/source/generated/org/alfresco/repo/cmis/ws/UpdatePropertiesResponse.java deleted file mode 100644 index 80f1bebfb8..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/UpdatePropertiesResponse.java +++ /dev/null @@ -1,121 +0,0 @@ - -package org.alfresco.repo.cmis.ws; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType>
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="objectId" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *         <element name="changeToken" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- *         <element name="extension" type="{http://docs.oasis-open.org/ns/cmis/messaging/200908/}cmisExtensionType" minOccurs="0"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "objectId", - "changeToken", - "extension" -}) -@XmlRootElement(name = "updatePropertiesResponse") -public class UpdatePropertiesResponse { - - @XmlElement(required = true) - protected String objectId; - protected String changeToken; - @XmlElementRef(name = "extension", namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", type = JAXBElement.class) - protected JAXBElement extension; - - /** - * Gets the value of the objectId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectId() { - return objectId; - } - - /** - * Sets the value of the objectId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectId(String value) { - this.objectId = value; - } - - /** - * Gets the value of the changeToken property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getChangeToken() { - return changeToken; - } - - /** - * Sets the value of the changeToken property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setChangeToken(String value) { - this.changeToken = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public JAXBElement getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CmisExtensionType }{@code >} - * - */ - public void setExtension(JAXBElement value) { - this.extension = ((JAXBElement ) value); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/VersioningService.java b/source/generated/org/alfresco/repo/cmis/ws/VersioningService.java deleted file mode 100644 index 0926c17dfe..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/VersioningService.java +++ /dev/null @@ -1,77 +0,0 @@ - -/* - * - */ - -package org.alfresco.repo.cmis.ws; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - - -@WebServiceClient(name = "VersioningService", - wsdlLocation = "file:CMISWS-Service.wsdl", - targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/") -public class VersioningService extends Service { - - public final static URL WSDL_LOCATION; - public final static QName SERVICE = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "VersioningService"); - public final static QName VersioningServicePort = new QName("http://docs.oasis-open.org/ns/cmis/ws/200908/", "VersioningServicePort"); - static { - URL url = null; - try { - url = new URL("file:CMISWS-Service.wsdl"); - } catch (MalformedURLException e) { - System.err.println("Can not initialize the default wsdl from file:CMISWS-Service.wsdl"); - // e.printStackTrace(); - } - WSDL_LOCATION = url; - } - - public VersioningService(URL wsdlLocation) { - super(wsdlLocation, SERVICE); - } - - public VersioningService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - public VersioningService() { - super(WSDL_LOCATION, SERVICE); - } - - /** - * - * @return - * returns VersioningServicePort - */ - @WebEndpoint(name = "VersioningServicePort") - public VersioningServicePort getVersioningServicePort() { - return super.getPort(VersioningServicePort, VersioningServicePort.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns VersioningServicePort - */ - @WebEndpoint(name = "VersioningServicePort") - public VersioningServicePort getVersioningServicePort(WebServiceFeature... features) { - return super.getPort(VersioningServicePort, VersioningServicePort.class, features); - } - -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/VersioningServicePort.java b/source/generated/org/alfresco/repo/cmis/ws/VersioningServicePort.java deleted file mode 100644 index f8a2fe4817..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/VersioningServicePort.java +++ /dev/null @@ -1,135 +0,0 @@ -package org.alfresco.repo.cmis.ws; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebParam.Mode; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.ws.RequestWrapper; -import javax.xml.ws.ResponseWrapper; - -/** - * This class was generated by Apache CXF 2.1.2 - * Wed Jan 13 20:13:28 GMT 2010 - * Generated source version: 2.1.2 - * - */ - -@WebService(targetNamespace = "http://docs.oasis-open.org/ns/cmis/ws/200908/", name = "VersioningServicePort") -@XmlSeeAlso({ObjectFactory.class}) -public interface VersioningServicePort { - - @WebResult(name = "objects", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getAllVersions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAllVersions") - @ResponseWrapper(localName = "getAllVersionsResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetAllVersionsResponse") - @WebMethod - public java.util.List getAllVersions( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @WebResult(name = "object", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getObjectOfLatestVersion", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectOfLatestVersion") - @ResponseWrapper(localName = "getObjectOfLatestVersionResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetObjectOfLatestVersionResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisObjectType getObjectOfLatestVersion( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "major", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean major, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "includeAllowableActions", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeAllowableActions, - @WebParam(name = "includeRelationships", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.EnumIncludeRelationships includeRelationships, - @WebParam(name = "renditionFilter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String renditionFilter, - @WebParam(name = "includePolicyIds", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includePolicyIds, - @WebParam(name = "includeACL", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean includeACL, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @RequestWrapper(localName = "checkOut", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CheckOut") - @ResponseWrapper(localName = "checkOutResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CheckOutResponse") - @WebMethod - public void checkOut( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension, - @WebParam(mode = WebParam.Mode.OUT, name = "contentCopied", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder contentCopied - ) throws CmisException; - - @RequestWrapper(localName = "cancelCheckOut", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CancelCheckOut") - @ResponseWrapper(localName = "cancelCheckOutResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CancelCheckOutResponse") - @WebMethod - public void cancelCheckOut( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; - - @WebResult(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - @RequestWrapper(localName = "getPropertiesOfLatestVersion", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetPropertiesOfLatestVersion") - @ResponseWrapper(localName = "getPropertiesOfLatestVersionResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.GetPropertiesOfLatestVersionResponse") - @WebMethod - public org.alfresco.repo.cmis.ws.CmisPropertiesType getPropertiesOfLatestVersion( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String objectId, - @WebParam(name = "major", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean major, - @WebParam(name = "filter", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String filter, - @WebParam(name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisExtensionType extension - ) throws CmisException; - - @RequestWrapper(localName = "checkIn", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CheckIn") - @ResponseWrapper(localName = "checkInResponse", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", className = "org.alfresco.repo.cmis.ws.CheckInResponse") - @WebMethod - public void checkIn( - @WebParam(name = "repositoryId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String repositoryId, - @WebParam(mode = WebParam.Mode.INOUT, name = "objectId", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder objectId, - @WebParam(name = "major", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.Boolean major, - @WebParam(name = "properties", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisPropertiesType properties, - @WebParam(name = "contentStream", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisContentStreamType contentStream, - @WebParam(name = "checkinComment", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.lang.String checkinComment, - @WebParam(name = "policies", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - java.util.List policies, - @WebParam(name = "addACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType addACEs, - @WebParam(name = "removeACEs", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - org.alfresco.repo.cmis.ws.CmisAccessControlListType removeACEs, - @WebParam(mode = WebParam.Mode.INOUT, name = "extension", targetNamespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/") - javax.xml.ws.Holder extension - ) throws CmisException; -} diff --git a/source/generated/org/alfresco/repo/cmis/ws/package-info.java b/source/generated/org/alfresco/repo/cmis/ws/package-info.java deleted file mode 100644 index 3c2540d361..0000000000 --- a/source/generated/org/alfresco/repo/cmis/ws/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://docs.oasis-open.org/ns/cmis/messaging/200908/", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package org.alfresco.repo.cmis.ws; diff --git a/source/generated/org/alfresco/repo/webservice/accesscontrol/ACE.java b/source/generated/org/alfresco/repo/webservice/accesscontrol/ACE.java deleted file mode 100644 index 88f0d700aa..0000000000 --- a/source/generated/org/alfresco/repo/webservice/accesscontrol/ACE.java +++ /dev/null @@ -1,191 +0,0 @@ -/** - * ACE.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.accesscontrol; - -public class ACE implements java.io.Serializable { - private java.lang.String authority; - - private java.lang.String permission; - - private org.alfresco.repo.webservice.accesscontrol.AccessStatus accessStatus; - - public ACE() { - } - - public ACE( - java.lang.String authority, - java.lang.String permission, - org.alfresco.repo.webservice.accesscontrol.AccessStatus accessStatus) { - this.authority = authority; - this.permission = permission; - this.accessStatus = accessStatus; - } - - - /** - * Gets the authority value for this ACE. - * - * @return authority - */ - public java.lang.String getAuthority() { - return authority; - } - - - /** - * Sets the authority value for this ACE. - * - * @param authority - */ - public void setAuthority(java.lang.String authority) { - this.authority = authority; - } - - - /** - * Gets the permission value for this ACE. - * - * @return permission - */ - public java.lang.String getPermission() { - return permission; - } - - - /** - * Sets the permission value for this ACE. - * - * @param permission - */ - public void setPermission(java.lang.String permission) { - this.permission = permission; - } - - - /** - * Gets the accessStatus value for this ACE. - * - * @return accessStatus - */ - public org.alfresco.repo.webservice.accesscontrol.AccessStatus getAccessStatus() { - return accessStatus; - } - - - /** - * Sets the accessStatus value for this ACE. - * - * @param accessStatus - */ - public void setAccessStatus(org.alfresco.repo.webservice.accesscontrol.AccessStatus accessStatus) { - this.accessStatus = accessStatus; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ACE)) return false; - ACE other = (ACE) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.authority==null && other.getAuthority()==null) || - (this.authority!=null && - this.authority.equals(other.getAuthority()))) && - ((this.permission==null && other.getPermission()==null) || - (this.permission!=null && - this.permission.equals(other.getPermission()))) && - ((this.accessStatus==null && other.getAccessStatus()==null) || - (this.accessStatus!=null && - this.accessStatus.equals(other.getAccessStatus()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getAuthority() != null) { - _hashCode += getAuthority().hashCode(); - } - if (getPermission() != null) { - _hashCode += getPermission().hashCode(); - } - if (getAccessStatus() != null) { - _hashCode += getAccessStatus().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(ACE.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/accesscontrol/1.0", "ACE")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("authority"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/accesscontrol/1.0", "authority")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("permission"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/accesscontrol/1.0", "permission")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("accessStatus"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/accesscontrol/1.0", "accessStatus")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/accesscontrol/1.0", "AccessStatus")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/accesscontrol/ACL.java b/source/generated/org/alfresco/repo/webservice/accesscontrol/ACL.java deleted file mode 100644 index f36dea710d..0000000000 --- a/source/generated/org/alfresco/repo/webservice/accesscontrol/ACL.java +++ /dev/null @@ -1,205 +0,0 @@ -/** - * ACL.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.accesscontrol; - -public class ACL implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference reference; - - private boolean inheritPermissions; - - private org.alfresco.repo.webservice.accesscontrol.ACE[] aces; - - public ACL() { - } - - public ACL( - org.alfresco.repo.webservice.types.Reference reference, - boolean inheritPermissions, - org.alfresco.repo.webservice.accesscontrol.ACE[] aces) { - this.reference = reference; - this.inheritPermissions = inheritPermissions; - this.aces = aces; - } - - - /** - * Gets the reference value for this ACL. - * - * @return reference - */ - public org.alfresco.repo.webservice.types.Reference getReference() { - return reference; - } - - - /** - * Sets the reference value for this ACL. - * - * @param reference - */ - public void setReference(org.alfresco.repo.webservice.types.Reference reference) { - this.reference = reference; - } - - - /** - * Gets the inheritPermissions value for this ACL. - * - * @return inheritPermissions - */ - public boolean isInheritPermissions() { - return inheritPermissions; - } - - - /** - * Sets the inheritPermissions value for this ACL. - * - * @param inheritPermissions - */ - public void setInheritPermissions(boolean inheritPermissions) { - this.inheritPermissions = inheritPermissions; - } - - - /** - * Gets the aces value for this ACL. - * - * @return aces - */ - public org.alfresco.repo.webservice.accesscontrol.ACE[] getAces() { - return aces; - } - - - /** - * Sets the aces value for this ACL. - * - * @param aces - */ - public void setAces(org.alfresco.repo.webservice.accesscontrol.ACE[] aces) { - this.aces = aces; - } - - public org.alfresco.repo.webservice.accesscontrol.ACE getAces(int i) { - return this.aces[i]; - } - - public void setAces(int i, org.alfresco.repo.webservice.accesscontrol.ACE _value) { - this.aces[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ACL)) return false; - ACL other = (ACL) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.reference==null && other.getReference()==null) || - (this.reference!=null && - this.reference.equals(other.getReference()))) && - this.inheritPermissions == other.isInheritPermissions() && - ((this.aces==null && other.getAces()==null) || - (this.aces!=null && - java.util.Arrays.equals(this.aces, other.getAces()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getReference() != null) { - _hashCode += getReference().hashCode(); - } - _hashCode += (isInheritPermissions() ? Boolean.TRUE : Boolean.FALSE).hashCode(); - if (getAces() != null) { - for (int i=0; - i - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/action/Action.java b/source/generated/org/alfresco/repo/webservice/action/Action.java deleted file mode 100644 index 4ffc1d1f99..0000000000 --- a/source/generated/org/alfresco/repo/webservice/action/Action.java +++ /dev/null @@ -1,461 +0,0 @@ -/** - * Action.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.action; - -public class Action implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference actionReference; - - private java.lang.String id; - - private java.lang.String actionName; - - private java.lang.String title; - - private java.lang.String description; - - private org.alfresco.repo.webservice.types.NamedValue[] parameters; - - private org.alfresco.repo.webservice.action.Condition[] conditions; - - private org.alfresco.repo.webservice.action.Action compensatingAction; - - private org.alfresco.repo.webservice.action.Action[] actions; - - public Action() { - } - - public Action( - org.alfresco.repo.webservice.types.Reference actionReference, - java.lang.String id, - java.lang.String actionName, - java.lang.String title, - java.lang.String description, - org.alfresco.repo.webservice.types.NamedValue[] parameters, - org.alfresco.repo.webservice.action.Condition[] conditions, - org.alfresco.repo.webservice.action.Action compensatingAction, - org.alfresco.repo.webservice.action.Action[] actions) { - this.actionReference = actionReference; - this.id = id; - this.actionName = actionName; - this.title = title; - this.description = description; - this.parameters = parameters; - this.conditions = conditions; - this.compensatingAction = compensatingAction; - this.actions = actions; - } - - - /** - * Gets the actionReference value for this Action. - * - * @return actionReference - */ - public org.alfresco.repo.webservice.types.Reference getActionReference() { - return actionReference; - } - - - /** - * Sets the actionReference value for this Action. - * - * @param actionReference - */ - public void setActionReference(org.alfresco.repo.webservice.types.Reference actionReference) { - this.actionReference = actionReference; - } - - - /** - * Gets the id value for this Action. - * - * @return id - */ - public java.lang.String getId() { - return id; - } - - - /** - * Sets the id value for this Action. - * - * @param id - */ - public void setId(java.lang.String id) { - this.id = id; - } - - - /** - * Gets the actionName value for this Action. - * - * @return actionName - */ - public java.lang.String getActionName() { - return actionName; - } - - - /** - * Sets the actionName value for this Action. - * - * @param actionName - */ - public void setActionName(java.lang.String actionName) { - this.actionName = actionName; - } - - - /** - * Gets the title value for this Action. - * - * @return title - */ - public java.lang.String getTitle() { - return title; - } - - - /** - * Sets the title value for this Action. - * - * @param title - */ - public void setTitle(java.lang.String title) { - this.title = title; - } - - - /** - * Gets the description value for this Action. - * - * @return description - */ - public java.lang.String getDescription() { - return description; - } - - - /** - * Sets the description value for this Action. - * - * @param description - */ - public void setDescription(java.lang.String description) { - this.description = description; - } - - - /** - * Gets the parameters value for this Action. - * - * @return parameters - */ - public org.alfresco.repo.webservice.types.NamedValue[] getParameters() { - return parameters; - } - - - /** - * Sets the parameters value for this Action. - * - * @param parameters - */ - public void setParameters(org.alfresco.repo.webservice.types.NamedValue[] parameters) { - this.parameters = parameters; - } - - public org.alfresco.repo.webservice.types.NamedValue getParameters(int i) { - return this.parameters[i]; - } - - public void setParameters(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.parameters[i] = _value; - } - - - /** - * Gets the conditions value for this Action. - * - * @return conditions - */ - public org.alfresco.repo.webservice.action.Condition[] getConditions() { - return conditions; - } - - - /** - * Sets the conditions value for this Action. - * - * @param conditions - */ - public void setConditions(org.alfresco.repo.webservice.action.Condition[] conditions) { - this.conditions = conditions; - } - - public org.alfresco.repo.webservice.action.Condition getConditions(int i) { - return this.conditions[i]; - } - - public void setConditions(int i, org.alfresco.repo.webservice.action.Condition _value) { - this.conditions[i] = _value; - } - - - /** - * Gets the compensatingAction value for this Action. - * - * @return compensatingAction - */ - public org.alfresco.repo.webservice.action.Action getCompensatingAction() { - return compensatingAction; - } - - - /** - * Sets the compensatingAction value for this Action. - * - * @param compensatingAction - */ - public void setCompensatingAction(org.alfresco.repo.webservice.action.Action compensatingAction) { - this.compensatingAction = compensatingAction; - } - - - /** - * Gets the actions value for this Action. - * - * @return actions - */ - public org.alfresco.repo.webservice.action.Action[] getActions() { - return actions; - } - - - /** - * Sets the actions value for this Action. - * - * @param actions - */ - public void setActions(org.alfresco.repo.webservice.action.Action[] actions) { - this.actions = actions; - } - - public org.alfresco.repo.webservice.action.Action getActions(int i) { - return this.actions[i]; - } - - public void setActions(int i, org.alfresco.repo.webservice.action.Action _value) { - this.actions[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Action)) return false; - Action other = (Action) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.actionReference==null && other.getActionReference()==null) || - (this.actionReference!=null && - this.actionReference.equals(other.getActionReference()))) && - ((this.id==null && other.getId()==null) || - (this.id!=null && - this.id.equals(other.getId()))) && - ((this.actionName==null && other.getActionName()==null) || - (this.actionName!=null && - this.actionName.equals(other.getActionName()))) && - ((this.title==null && other.getTitle()==null) || - (this.title!=null && - this.title.equals(other.getTitle()))) && - ((this.description==null && other.getDescription()==null) || - (this.description!=null && - this.description.equals(other.getDescription()))) && - ((this.parameters==null && other.getParameters()==null) || - (this.parameters!=null && - java.util.Arrays.equals(this.parameters, other.getParameters()))) && - ((this.conditions==null && other.getConditions()==null) || - (this.conditions!=null && - java.util.Arrays.equals(this.conditions, other.getConditions()))) && - ((this.compensatingAction==null && other.getCompensatingAction()==null) || - (this.compensatingAction!=null && - this.compensatingAction.equals(other.getCompensatingAction()))) && - ((this.actions==null && other.getActions()==null) || - (this.actions!=null && - java.util.Arrays.equals(this.actions, other.getActions()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getActionReference() != null) { - _hashCode += getActionReference().hashCode(); - } - if (getId() != null) { - _hashCode += getId().hashCode(); - } - if (getActionName() != null) { - _hashCode += getActionName().hashCode(); - } - if (getTitle() != null) { - _hashCode += getTitle().hashCode(); - } - if (getDescription() != null) { - _hashCode += getDescription().hashCode(); - } - if (getParameters() != null) { - for (int i=0; - i - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/administration/AdministrationFault.java b/source/generated/org/alfresco/repo/webservice/administration/AdministrationFault.java deleted file mode 100644 index 37229f31fa..0000000000 --- a/source/generated/org/alfresco/repo/webservice/administration/AdministrationFault.java +++ /dev/null @@ -1,158 +0,0 @@ -/** - * AdministrationFault.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.administration; - -public class AdministrationFault extends org.apache.axis.AxisFault implements java.io.Serializable { - private int errorCode; - - private java.lang.String message1; - - public AdministrationFault() { - } - - public AdministrationFault( - int errorCode, - java.lang.String message1) { - this.errorCode = errorCode; - this.message1 = message1; - } - - - /** - * Gets the errorCode value for this AdministrationFault. - * - * @return errorCode - */ - public int getErrorCode() { - return errorCode; - } - - - /** - * Sets the errorCode value for this AdministrationFault. - * - * @param errorCode - */ - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - - /** - * Gets the message1 value for this AdministrationFault. - * - * @return message1 - */ - public java.lang.String getMessage1() { - return message1; - } - - - /** - * Sets the message1 value for this AdministrationFault. - * - * @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 AdministrationFault)) return false; - AdministrationFault other = (AdministrationFault) 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(AdministrationFault.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/administration/1.0", "AdministrationFault")); - 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/administration/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/administration/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); - } -} diff --git a/source/generated/org/alfresco/repo/webservice/administration/AdministrationServiceSoapPort.java b/source/generated/org/alfresco/repo/webservice/administration/AdministrationServiceSoapPort.java deleted file mode 100644 index f64b0d840f..0000000000 --- a/source/generated/org/alfresco/repo/webservice/administration/AdministrationServiceSoapPort.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * AdministrationServiceSoapPort.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.administration; - -public interface AdministrationServiceSoapPort extends java.rmi.Remote { - - /** - * Gets the details of the requested users. - */ - public org.alfresco.repo.webservice.administration.UserQueryResults queryUsers(org.alfresco.repo.webservice.administration.UserFilter filter) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Fetch the next bathc of users from an existing user query. - */ - public org.alfresco.repo.webservice.administration.UserQueryResults fetchMoreUsers(java.lang.String querySession) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Get the details of a specified user. - */ - public org.alfresco.repo.webservice.administration.UserDetails getUser(java.lang.String userName) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Create new users with the details provided. - */ - public org.alfresco.repo.webservice.administration.UserDetails[] createUsers(org.alfresco.repo.webservice.administration.NewUserDetails[] newUsers) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Updates the details of the specified users. - */ - public org.alfresco.repo.webservice.administration.UserDetails[] updateUsers(org.alfresco.repo.webservice.administration.UserDetails[] users) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Changes the password of the specified user. - */ - public void changePassword(java.lang.String userName, java.lang.String oldPassword, java.lang.String newPassword) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; - - /** - * Delete the specified users. - */ - public void deleteUsers(java.lang.String[] userNames) throws java.rmi.RemoteException, org.alfresco.repo.webservice.administration.AdministrationFault; -} diff --git a/source/generated/org/alfresco/repo/webservice/administration/NewUserDetails.java b/source/generated/org/alfresco/repo/webservice/administration/NewUserDetails.java deleted file mode 100644 index 28eb969fe7..0000000000 --- a/source/generated/org/alfresco/repo/webservice/administration/NewUserDetails.java +++ /dev/null @@ -1,209 +0,0 @@ -/** - * NewUserDetails.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.administration; - -public class NewUserDetails implements java.io.Serializable { - private java.lang.String userName; - - private java.lang.String password; - - private org.alfresco.repo.webservice.types.NamedValue[] properties; - - public NewUserDetails() { - } - - public NewUserDetails( - java.lang.String userName, - java.lang.String password, - org.alfresco.repo.webservice.types.NamedValue[] properties) { - this.userName = userName; - this.password = password; - this.properties = properties; - } - - - /** - * Gets the userName value for this NewUserDetails. - * - * @return userName - */ - public java.lang.String getUserName() { - return userName; - } - - - /** - * Sets the userName value for this NewUserDetails. - * - * @param userName - */ - public void setUserName(java.lang.String userName) { - this.userName = userName; - } - - - /** - * Gets the password value for this NewUserDetails. - * - * @return password - */ - public java.lang.String getPassword() { - return password; - } - - - /** - * Sets the password value for this NewUserDetails. - * - * @param password - */ - public void setPassword(java.lang.String password) { - this.password = password; - } - - - /** - * Gets the properties value for this NewUserDetails. - * - * @return properties - */ - public org.alfresco.repo.webservice.types.NamedValue[] getProperties() { - return properties; - } - - - /** - * Sets the properties value for this NewUserDetails. - * - * @param properties - */ - public void setProperties(org.alfresco.repo.webservice.types.NamedValue[] properties) { - this.properties = properties; - } - - public org.alfresco.repo.webservice.types.NamedValue getProperties(int i) { - return this.properties[i]; - } - - public void setProperties(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.properties[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof NewUserDetails)) return false; - NewUserDetails other = (NewUserDetails) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.userName==null && other.getUserName()==null) || - (this.userName!=null && - this.userName.equals(other.getUserName()))) && - ((this.password==null && other.getPassword()==null) || - (this.password!=null && - this.password.equals(other.getPassword()))) && - ((this.properties==null && other.getProperties()==null) || - (this.properties!=null && - java.util.Arrays.equals(this.properties, other.getProperties()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getUserName() != null) { - _hashCode += getUserName().hashCode(); - } - if (getPassword() != null) { - _hashCode += getPassword().hashCode(); - } - if (getProperties() != null) { - for (int i=0; - i - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationFault.java b/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationFault.java deleted file mode 100644 index dcf7842852..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationFault.java +++ /dev/null @@ -1,158 +0,0 @@ -/** - * AuthenticationFault.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authentication; - -public class AuthenticationFault extends org.apache.axis.AxisFault implements java.io.Serializable { - private int errorCode; - - private java.lang.String message1; - - public AuthenticationFault() { - } - - public AuthenticationFault( - int errorCode, - java.lang.String message1) { - this.errorCode = errorCode; - this.message1 = message1; - } - - - /** - * Gets the errorCode value for this AuthenticationFault. - * - * @return errorCode - */ - public int getErrorCode() { - return errorCode; - } - - - /** - * Sets the errorCode value for this AuthenticationFault. - * - * @param errorCode - */ - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - - /** - * Gets the message1 value for this AuthenticationFault. - * - * @return message1 - */ - public java.lang.String getMessage1() { - return message1; - } - - - /** - * Sets the message1 value for this AuthenticationFault. - * - * @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 AuthenticationFault)) return false; - AuthenticationFault other = (AuthenticationFault) 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(AuthenticationFault.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authentication/1.0", "AuthenticationFault")); - 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/authentication/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/authentication/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); - } -} diff --git a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationResult.java b/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationResult.java deleted file mode 100644 index 1a6a9a6809..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationResult.java +++ /dev/null @@ -1,191 +0,0 @@ -/** - * AuthenticationResult.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authentication; - -public class AuthenticationResult implements java.io.Serializable { - private java.lang.String username; - - private java.lang.String ticket; - - private java.lang.String sessionid; - - public AuthenticationResult() { - } - - public AuthenticationResult( - java.lang.String username, - java.lang.String ticket, - java.lang.String sessionid) { - this.username = username; - this.ticket = ticket; - this.sessionid = sessionid; - } - - - /** - * Gets the username value for this AuthenticationResult. - * - * @return username - */ - public java.lang.String getUsername() { - return username; - } - - - /** - * Sets the username value for this AuthenticationResult. - * - * @param username - */ - public void setUsername(java.lang.String username) { - this.username = username; - } - - - /** - * Gets the ticket value for this AuthenticationResult. - * - * @return ticket - */ - public java.lang.String getTicket() { - return ticket; - } - - - /** - * Sets the ticket value for this AuthenticationResult. - * - * @param ticket - */ - public void setTicket(java.lang.String ticket) { - this.ticket = ticket; - } - - - /** - * Gets the sessionid value for this AuthenticationResult. - * - * @return sessionid - */ - public java.lang.String getSessionid() { - return sessionid; - } - - - /** - * Sets the sessionid value for this AuthenticationResult. - * - * @param sessionid - */ - public void setSessionid(java.lang.String sessionid) { - this.sessionid = sessionid; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof AuthenticationResult)) return false; - AuthenticationResult other = (AuthenticationResult) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.username==null && other.getUsername()==null) || - (this.username!=null && - this.username.equals(other.getUsername()))) && - ((this.ticket==null && other.getTicket()==null) || - (this.ticket!=null && - this.ticket.equals(other.getTicket()))) && - ((this.sessionid==null && other.getSessionid()==null) || - (this.sessionid!=null && - this.sessionid.equals(other.getSessionid()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getUsername() != null) { - _hashCode += getUsername().hashCode(); - } - if (getTicket() != null) { - _hashCode += getTicket().hashCode(); - } - if (getSessionid() != null) { - _hashCode += getSessionid().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(AuthenticationResult.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authentication/1.0", "AuthenticationResult")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("username"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authentication/1.0", "username")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("ticket"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authentication/1.0", "ticket")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("sessionid"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authentication/1.0", "sessionid")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationServiceSoapPort.java b/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationServiceSoapPort.java deleted file mode 100644 index 1544723039..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authentication/AuthenticationServiceSoapPort.java +++ /dev/null @@ -1,13 +0,0 @@ -/** - * AuthenticationServiceSoapPort.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authentication; - -public interface AuthenticationServiceSoapPort extends java.rmi.Remote { - public org.alfresco.repo.webservice.authentication.AuthenticationResult startSession(java.lang.String username, java.lang.String password) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authentication.AuthenticationFault; - public void endSession(java.lang.String ticket) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authentication.AuthenticationFault; -} diff --git a/source/generated/org/alfresco/repo/webservice/authentication/deploy.wsdd b/source/generated/org/alfresco/repo/webservice/authentication/deploy.wsdd deleted file mode 100644 index 7a7a3bc379..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authentication/deploy.wsdd +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/authoring/AuthoringFault.java b/source/generated/org/alfresco/repo/webservice/authoring/AuthoringFault.java deleted file mode 100644 index c7277cbbb5..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authoring/AuthoringFault.java +++ /dev/null @@ -1,158 +0,0 @@ -/** - * AuthoringFault.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authoring; - -public class AuthoringFault extends org.apache.axis.AxisFault implements java.io.Serializable { - private int errorCode; - - private java.lang.String message1; - - public AuthoringFault() { - } - - public AuthoringFault( - int errorCode, - java.lang.String message1) { - this.errorCode = errorCode; - this.message1 = message1; - } - - - /** - * Gets the errorCode value for this AuthoringFault. - * - * @return errorCode - */ - public int getErrorCode() { - return errorCode; - } - - - /** - * Sets the errorCode value for this AuthoringFault. - * - * @param errorCode - */ - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - - /** - * Gets the message1 value for this AuthoringFault. - * - * @return message1 - */ - public java.lang.String getMessage1() { - return message1; - } - - - /** - * Sets the message1 value for this AuthoringFault. - * - * @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 AuthoringFault)) return false; - AuthoringFault other = (AuthoringFault) 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(AuthoringFault.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/authoring/1.0", "AuthoringFault")); - 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/authoring/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/authoring/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); - } -} diff --git a/source/generated/org/alfresco/repo/webservice/authoring/AuthoringServiceSoapPort.java b/source/generated/org/alfresco/repo/webservice/authoring/AuthoringServiceSoapPort.java deleted file mode 100644 index 2534adb2af..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authoring/AuthoringServiceSoapPort.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * AuthoringServiceSoapPort.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authoring; - -public interface AuthoringServiceSoapPort extends java.rmi.Remote { - - /** - * Checkout a content resource for editing. - */ - public org.alfresco.repo.webservice.authoring.CheckoutResult checkout(org.alfresco.repo.webservice.types.Predicate items, org.alfresco.repo.webservice.types.ParentReference destination) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Checkin a content resource. - */ - public org.alfresco.repo.webservice.authoring.CheckinResult checkin(org.alfresco.repo.webservice.types.Predicate items, org.alfresco.repo.webservice.types.NamedValue[] comments, boolean keepCheckedOut) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Checkin an external content resource thus replacing the existing - * working content. - */ - public org.alfresco.repo.webservice.types.Reference checkinExternal(org.alfresco.repo.webservice.types.Reference items, org.alfresco.repo.webservice.types.NamedValue[] comments, boolean keepCheckedOut, org.alfresco.repo.webservice.types.ContentFormat format, byte[] content) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Cancels the checkout. - */ - public org.alfresco.repo.webservice.authoring.CancelCheckoutResult cancelCheckout(org.alfresco.repo.webservice.types.Predicate items) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Locks a content resource. - */ - public org.alfresco.repo.webservice.types.Reference[] lock(org.alfresco.repo.webservice.types.Predicate items, boolean lockChildren, org.alfresco.repo.webservice.authoring.LockTypeEnum lockType) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Unlocks a content resource. - */ - public org.alfresco.repo.webservice.types.Reference[] unlock(org.alfresco.repo.webservice.types.Predicate items, boolean unlockChildren) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Gets the lock status of the specified nodes. - */ - public org.alfresco.repo.webservice.authoring.LockStatus[] getLockStatus(org.alfresco.repo.webservice.types.Predicate items) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Create a snapshot of the specified node(s) in the version store. - */ - public org.alfresco.repo.webservice.authoring.VersionResult createVersion(org.alfresco.repo.webservice.types.Predicate items, org.alfresco.repo.webservice.types.NamedValue[] comments, boolean versionChildren) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Gets the version history for the specfied node. - */ - public org.alfresco.repo.webservice.types.VersionHistory getVersionHistory(org.alfresco.repo.webservice.types.Reference node) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Revert a node to the snapshot of the specified version. - */ - public void revertVersion(org.alfresco.repo.webservice.types.Reference node, java.lang.String versionLabel) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; - - /** - * Delete all snapshot versions of the specified node. - */ - public org.alfresco.repo.webservice.types.VersionHistory deleteAllVersions(org.alfresco.repo.webservice.types.Reference node) throws java.rmi.RemoteException, org.alfresco.repo.webservice.authoring.AuthoringFault; -} diff --git a/source/generated/org/alfresco/repo/webservice/authoring/CancelCheckoutResult.java b/source/generated/org/alfresco/repo/webservice/authoring/CancelCheckoutResult.java deleted file mode 100644 index 5cd89d5cbc..0000000000 --- a/source/generated/org/alfresco/repo/webservice/authoring/CancelCheckoutResult.java +++ /dev/null @@ -1,191 +0,0 @@ -/** - * CancelCheckoutResult.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.authoring; - -public class CancelCheckoutResult implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference[] workingCopies; - - private org.alfresco.repo.webservice.types.Reference[] originals; - - public CancelCheckoutResult() { - } - - public CancelCheckoutResult( - org.alfresco.repo.webservice.types.Reference[] workingCopies, - org.alfresco.repo.webservice.types.Reference[] originals) { - this.workingCopies = workingCopies; - this.originals = originals; - } - - - /** - * Gets the workingCopies value for this CancelCheckoutResult. - * - * @return workingCopies - */ - public org.alfresco.repo.webservice.types.Reference[] getWorkingCopies() { - return workingCopies; - } - - - /** - * Sets the workingCopies value for this CancelCheckoutResult. - * - * @param workingCopies - */ - public void setWorkingCopies(org.alfresco.repo.webservice.types.Reference[] workingCopies) { - this.workingCopies = workingCopies; - } - - public org.alfresco.repo.webservice.types.Reference getWorkingCopies(int i) { - return this.workingCopies[i]; - } - - public void setWorkingCopies(int i, org.alfresco.repo.webservice.types.Reference _value) { - this.workingCopies[i] = _value; - } - - - /** - * Gets the originals value for this CancelCheckoutResult. - * - * @return originals - */ - public org.alfresco.repo.webservice.types.Reference[] getOriginals() { - return originals; - } - - - /** - * Sets the originals value for this CancelCheckoutResult. - * - * @param originals - */ - public void setOriginals(org.alfresco.repo.webservice.types.Reference[] originals) { - this.originals = originals; - } - - public org.alfresco.repo.webservice.types.Reference getOriginals(int i) { - return this.originals[i]; - } - - public void setOriginals(int i, org.alfresco.repo.webservice.types.Reference _value) { - this.originals[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CancelCheckoutResult)) return false; - CancelCheckoutResult other = (CancelCheckoutResult) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.workingCopies==null && other.getWorkingCopies()==null) || - (this.workingCopies!=null && - java.util.Arrays.equals(this.workingCopies, other.getWorkingCopies()))) && - ((this.originals==null && other.getOriginals()==null) || - (this.originals!=null && - java.util.Arrays.equals(this.originals, other.getOriginals()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getWorkingCopies() != null) { - for (int i=0; - i - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/classification/AppliedCategory.java b/source/generated/org/alfresco/repo/webservice/classification/AppliedCategory.java deleted file mode 100644 index adadc15040..0000000000 --- a/source/generated/org/alfresco/repo/webservice/classification/AppliedCategory.java +++ /dev/null @@ -1,173 +0,0 @@ -/** - * AppliedCategory.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.classification; - -public class AppliedCategory implements java.io.Serializable { - private java.lang.String classification; - - private org.alfresco.repo.webservice.types.Reference[] categories; - - public AppliedCategory() { - } - - public AppliedCategory( - java.lang.String classification, - org.alfresco.repo.webservice.types.Reference[] categories) { - this.classification = classification; - this.categories = categories; - } - - - /** - * Gets the classification value for this AppliedCategory. - * - * @return classification - */ - public java.lang.String getClassification() { - return classification; - } - - - /** - * Sets the classification value for this AppliedCategory. - * - * @param classification - */ - public void setClassification(java.lang.String classification) { - this.classification = classification; - } - - - /** - * Gets the categories value for this AppliedCategory. - * - * @return categories - */ - public org.alfresco.repo.webservice.types.Reference[] getCategories() { - return categories; - } - - - /** - * Sets the categories value for this AppliedCategory. - * - * @param categories - */ - public void setCategories(org.alfresco.repo.webservice.types.Reference[] categories) { - this.categories = categories; - } - - public org.alfresco.repo.webservice.types.Reference getCategories(int i) { - return this.categories[i]; - } - - public void setCategories(int i, org.alfresco.repo.webservice.types.Reference _value) { - this.categories[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof AppliedCategory)) return false; - AppliedCategory other = (AppliedCategory) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.classification==null && other.getClassification()==null) || - (this.classification!=null && - this.classification.equals(other.getClassification()))) && - ((this.categories==null && other.getCategories()==null) || - (this.categories!=null && - java.util.Arrays.equals(this.categories, other.getCategories()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getClassification() != null) { - _hashCode += getClassification().hashCode(); - } - if (getCategories() != null) { - for (int i=0; - i - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/content/Content.java b/source/generated/org/alfresco/repo/webservice/content/Content.java deleted file mode 100644 index eed1a2c8e2..0000000000 --- a/source/generated/org/alfresco/repo/webservice/content/Content.java +++ /dev/null @@ -1,259 +0,0 @@ -/** - * Content.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.content; - -public class Content implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference node; - - private java.lang.String property; - - private long length; - - private org.alfresco.repo.webservice.types.ContentFormat format; - - private java.lang.String url; - - public Content() { - } - - public Content( - org.alfresco.repo.webservice.types.Reference node, - java.lang.String property, - long length, - org.alfresco.repo.webservice.types.ContentFormat format, - java.lang.String url) { - this.node = node; - this.property = property; - this.length = length; - this.format = format; - this.url = url; - } - - - /** - * Gets the node value for this Content. - * - * @return node - */ - public org.alfresco.repo.webservice.types.Reference getNode() { - return node; - } - - - /** - * Sets the node value for this Content. - * - * @param node - */ - public void setNode(org.alfresco.repo.webservice.types.Reference node) { - this.node = node; - } - - - /** - * Gets the property value for this Content. - * - * @return property - */ - public java.lang.String getProperty() { - return property; - } - - - /** - * Sets the property value for this Content. - * - * @param property - */ - public void setProperty(java.lang.String property) { - this.property = property; - } - - - /** - * Gets the length value for this Content. - * - * @return length - */ - public long getLength() { - return length; - } - - - /** - * Sets the length value for this Content. - * - * @param length - */ - public void setLength(long length) { - this.length = length; - } - - - /** - * Gets the format value for this Content. - * - * @return format - */ - public org.alfresco.repo.webservice.types.ContentFormat getFormat() { - return format; - } - - - /** - * Sets the format value for this Content. - * - * @param format - */ - public void setFormat(org.alfresco.repo.webservice.types.ContentFormat format) { - this.format = format; - } - - - /** - * Gets the url value for this Content. - * - * @return url - */ - public java.lang.String getUrl() { - return url; - } - - - /** - * Sets the url value for this Content. - * - * @param url - */ - public void setUrl(java.lang.String url) { - this.url = url; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Content)) return false; - Content other = (Content) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.node==null && other.getNode()==null) || - (this.node!=null && - this.node.equals(other.getNode()))) && - ((this.property==null && other.getProperty()==null) || - (this.property!=null && - this.property.equals(other.getProperty()))) && - this.length == other.getLength() && - ((this.format==null && other.getFormat()==null) || - (this.format!=null && - this.format.equals(other.getFormat()))) && - ((this.url==null && other.getUrl()==null) || - (this.url!=null && - this.url.equals(other.getUrl()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getNode() != null) { - _hashCode += getNode().hashCode(); - } - if (getProperty() != null) { - _hashCode += getProperty().hashCode(); - } - _hashCode += new Long(getLength()).hashCode(); - if (getFormat() != null) { - _hashCode += getFormat().hashCode(); - } - if (getUrl() != null) { - _hashCode += getUrl().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(Content.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "Content")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("node"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "node")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Reference")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("property"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "property")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("length"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "length")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "long")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("format"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "format")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ContentFormat")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("url"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "url")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/content/ContentFault.java b/source/generated/org/alfresco/repo/webservice/content/ContentFault.java deleted file mode 100644 index 7c58416165..0000000000 --- a/source/generated/org/alfresco/repo/webservice/content/ContentFault.java +++ /dev/null @@ -1,158 +0,0 @@ -/** - * ContentFault.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.content; - -public class ContentFault extends org.apache.axis.AxisFault implements java.io.Serializable { - private int errorCode; - - private java.lang.String message1; - - public ContentFault() { - } - - public ContentFault( - int errorCode, - java.lang.String message1) { - this.errorCode = errorCode; - this.message1 = message1; - } - - - /** - * Gets the errorCode value for this ContentFault. - * - * @return errorCode - */ - public int getErrorCode() { - return errorCode; - } - - - /** - * Sets the errorCode value for this ContentFault. - * - * @param errorCode - */ - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - - /** - * Gets the message1 value for this ContentFault. - * - * @return message1 - */ - public java.lang.String getMessage1() { - return message1; - } - - - /** - * Sets the message1 value for this ContentFault. - * - * @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 ContentFault)) return false; - ContentFault other = (ContentFault) 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(ContentFault.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "ContentFault")); - 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/content/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/content/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); - } -} diff --git a/source/generated/org/alfresco/repo/webservice/content/ContentSegment.java b/source/generated/org/alfresco/repo/webservice/content/ContentSegment.java deleted file mode 100644 index ad8c8efa5c..0000000000 --- a/source/generated/org/alfresco/repo/webservice/content/ContentSegment.java +++ /dev/null @@ -1,147 +0,0 @@ -/** - * ContentSegment.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.content; - -public class ContentSegment implements java.io.Serializable { - private long offset; - - private long length; - - public ContentSegment() { - } - - public ContentSegment( - long offset, - long length) { - this.offset = offset; - this.length = length; - } - - - /** - * Gets the offset value for this ContentSegment. - * - * @return offset - */ - public long getOffset() { - return offset; - } - - - /** - * Sets the offset value for this ContentSegment. - * - * @param offset - */ - public void setOffset(long offset) { - this.offset = offset; - } - - - /** - * Gets the length value for this ContentSegment. - * - * @return length - */ - public long getLength() { - return length; - } - - - /** - * Sets the length value for this ContentSegment. - * - * @param length - */ - public void setLength(long length) { - this.length = length; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ContentSegment)) return false; - ContentSegment other = (ContentSegment) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - this.offset == other.getOffset() && - this.length == other.getLength(); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - _hashCode += new Long(getOffset()).hashCode(); - _hashCode += new Long(getLength()).hashCode(); - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(ContentSegment.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "ContentSegment")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("offset"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "offset")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "long")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("length"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/content/1.0", "length")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "long")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/content/ContentServiceSoapPort.java b/source/generated/org/alfresco/repo/webservice/content/ContentServiceSoapPort.java deleted file mode 100644 index e37f45899a..0000000000 --- a/source/generated/org/alfresco/repo/webservice/content/ContentServiceSoapPort.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * ContentServiceSoapPort.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.content; - -public interface ContentServiceSoapPort extends java.rmi.Remote { - - /** - * Retrieves content from the repository. - */ - public org.alfresco.repo.webservice.content.Content[] read(org.alfresco.repo.webservice.types.Predicate items, java.lang.String property) throws java.rmi.RemoteException, org.alfresco.repo.webservice.content.ContentFault; - - /** - * Writes content to the repository. - */ - public org.alfresco.repo.webservice.content.Content write(org.alfresco.repo.webservice.types.Reference node, java.lang.String property, byte[] content, org.alfresco.repo.webservice.types.ContentFormat format) throws java.rmi.RemoteException, org.alfresco.repo.webservice.content.ContentFault; - - /** - * Writes the attached content into the repository. - */ - public org.alfresco.repo.webservice.content.Content writeWithAttachment(org.alfresco.repo.webservice.types.Reference node, java.lang.String property, org.alfresco.repo.webservice.types.ContentFormat format) throws java.rmi.RemoteException, org.alfresco.repo.webservice.content.ContentFault; - - /** - * Clears content from the repository. - */ - public org.alfresco.repo.webservice.content.Content[] clear(org.alfresco.repo.webservice.types.Predicate items, java.lang.String property) throws java.rmi.RemoteException, org.alfresco.repo.webservice.content.ContentFault; - - /** - * Transforms content from one mimetype to another. - */ - public org.alfresco.repo.webservice.content.Content transform(org.alfresco.repo.webservice.types.Reference source, java.lang.String property, org.alfresco.repo.webservice.types.Reference destinationReference, java.lang.String destinationProperty, org.alfresco.repo.webservice.types.ContentFormat destinationFormat) throws java.rmi.RemoteException, org.alfresco.repo.webservice.content.ContentFault; -} diff --git a/source/generated/org/alfresco/repo/webservice/content/deploy.wsdd b/source/generated/org/alfresco/repo/webservice/content/deploy.wsdd deleted file mode 100644 index 3b30c41ed3..0000000000 --- a/source/generated/org/alfresco/repo/webservice/content/deploy.wsdd +++ /dev/null @@ -1,305 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/dictionary/ClassPredicate.java b/source/generated/org/alfresco/repo/webservice/dictionary/ClassPredicate.java deleted file mode 100644 index 840ab57826..0000000000 --- a/source/generated/org/alfresco/repo/webservice/dictionary/ClassPredicate.java +++ /dev/null @@ -1,201 +0,0 @@ -/** - * ClassPredicate.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/repository/Association.java b/source/generated/org/alfresco/repo/webservice/repository/Association.java deleted file mode 100644 index 94116d85f5..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/Association.java +++ /dev/null @@ -1,155 +0,0 @@ -/** - * Association.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.repository; - -public class Association implements java.io.Serializable { - private java.lang.String associationType; - - private java.lang.String direction; - - public Association() { - } - - public Association( - java.lang.String associationType, - java.lang.String direction) { - this.associationType = associationType; - this.direction = direction; - } - - - /** - * Gets the associationType value for this Association. - * - * @return associationType - */ - public java.lang.String getAssociationType() { - return associationType; - } - - - /** - * Sets the associationType value for this Association. - * - * @param associationType - */ - public void setAssociationType(java.lang.String associationType) { - this.associationType = associationType; - } - - - /** - * Gets the direction value for this Association. - * - * @return direction - */ - public java.lang.String getDirection() { - return direction; - } - - - /** - * Sets the direction value for this Association. - * - * @param direction - */ - public void setDirection(java.lang.String direction) { - this.direction = direction; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Association)) return false; - Association other = (Association) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.associationType==null && other.getAssociationType()==null) || - (this.associationType!=null && - this.associationType.equals(other.getAssociationType()))) && - ((this.direction==null && other.getDirection()==null) || - (this.direction!=null && - this.direction.equals(other.getDirection()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getAssociationType() != null) { - _hashCode += getAssociationType().hashCode(); - } - if (getDirection() != null) { - _hashCode += getDirection().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(Association.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "Association")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("associationType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "associationType")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("direction"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "direction")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/repository/QueryResult.java b/source/generated/org/alfresco/repo/webservice/repository/QueryResult.java deleted file mode 100644 index ede9bab621..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/QueryResult.java +++ /dev/null @@ -1,155 +0,0 @@ -/** - * QueryResult.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.repository; - -public class QueryResult implements java.io.Serializable { - private java.lang.String querySession; - - private org.alfresco.repo.webservice.types.ResultSet resultSet; - - public QueryResult() { - } - - public QueryResult( - java.lang.String querySession, - org.alfresco.repo.webservice.types.ResultSet resultSet) { - this.querySession = querySession; - this.resultSet = resultSet; - } - - - /** - * Gets the querySession value for this QueryResult. - * - * @return querySession - */ - public java.lang.String getQuerySession() { - return querySession; - } - - - /** - * Sets the querySession value for this QueryResult. - * - * @param querySession - */ - public void setQuerySession(java.lang.String querySession) { - this.querySession = querySession; - } - - - /** - * Gets the resultSet value for this QueryResult. - * - * @return resultSet - */ - public org.alfresco.repo.webservice.types.ResultSet getResultSet() { - return resultSet; - } - - - /** - * Sets the resultSet value for this QueryResult. - * - * @param resultSet - */ - public void setResultSet(org.alfresco.repo.webservice.types.ResultSet resultSet) { - this.resultSet = resultSet; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof QueryResult)) return false; - QueryResult other = (QueryResult) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.querySession==null && other.getQuerySession()==null) || - (this.querySession!=null && - this.querySession.equals(other.getQuerySession()))) && - ((this.resultSet==null && other.getResultSet()==null) || - (this.resultSet!=null && - this.resultSet.equals(other.getResultSet()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getQuerySession() != null) { - _hashCode += getQuerySession().hashCode(); - } - if (getResultSet() != null) { - _hashCode += getResultSet().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(QueryResult.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "QueryResult")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("querySession"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "querySession")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("resultSet"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "resultSet")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ResultSet")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/repository/RepositoryFault.java b/source/generated/org/alfresco/repo/webservice/repository/RepositoryFault.java deleted file mode 100644 index 9dcdd5fb1e..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/RepositoryFault.java +++ /dev/null @@ -1,158 +0,0 @@ -/** - * RepositoryFault.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.repository; - -public class RepositoryFault extends org.apache.axis.AxisFault implements java.io.Serializable { - private int errorCode; - - private java.lang.String message1; - - public RepositoryFault() { - } - - public RepositoryFault( - int errorCode, - java.lang.String message1) { - this.errorCode = errorCode; - this.message1 = message1; - } - - - /** - * Gets the errorCode value for this RepositoryFault. - * - * @return errorCode - */ - public int getErrorCode() { - return errorCode; - } - - - /** - * Sets the errorCode value for this RepositoryFault. - * - * @param errorCode - */ - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - - /** - * Gets the message1 value for this RepositoryFault. - * - * @return message1 - */ - public java.lang.String getMessage1() { - return message1; - } - - - /** - * Sets the message1 value for this RepositoryFault. - * - * @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 RepositoryFault)) return false; - RepositoryFault other = (RepositoryFault) 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(RepositoryFault.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "RepositoryFault")); - 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/repository/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/repository/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); - } -} diff --git a/source/generated/org/alfresco/repo/webservice/repository/RepositoryServiceSoapPort.java b/source/generated/org/alfresco/repo/webservice/repository/RepositoryServiceSoapPort.java deleted file mode 100644 index 924d2dc518..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/RepositoryServiceSoapPort.java +++ /dev/null @@ -1,64 +0,0 @@ -/** - * RepositoryServiceSoapPort.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.repository; - -public interface RepositoryServiceSoapPort extends java.rmi.Remote { - - /** - * Creates a new repository store. - */ - public org.alfresco.repo.webservice.types.Store createStore(java.lang.String scheme, java.lang.String address) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Retrieves a list of stores where content resources are held. - */ - public org.alfresco.repo.webservice.types.Store[] getStores() throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Executes a query against a store. - */ - public org.alfresco.repo.webservice.repository.QueryResult query(org.alfresco.repo.webservice.types.Store store, org.alfresco.repo.webservice.types.Query query, boolean includeMetaData) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Executes a query to retrieve the children of the specified - * resource. - */ - public org.alfresco.repo.webservice.repository.QueryResult queryChildren(org.alfresco.repo.webservice.types.Reference node) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Executes a query to retrieve the parents of the specified resource. - */ - public org.alfresco.repo.webservice.repository.QueryResult queryParents(org.alfresco.repo.webservice.types.Reference node) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Executes a query to retrieve associated resources of the specified - * resource. - */ - public org.alfresco.repo.webservice.repository.QueryResult queryAssociated(org.alfresco.repo.webservice.types.Reference node, org.alfresco.repo.webservice.repository.Association association) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Fetches the next batch of query results. - */ - public org.alfresco.repo.webservice.repository.QueryResult fetchMore(java.lang.String querySession) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Executes a CML script to manipulate the contents of a Repository - * store. - */ - public org.alfresco.repo.webservice.repository.UpdateResult[] update(org.alfresco.repo.webservice.types.CML statements) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Describes a content resource. - */ - public org.alfresco.repo.webservice.types.NodeDefinition[] describe(org.alfresco.repo.webservice.types.Predicate items) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; - - /** - * Gets a resource from the repository. - */ - public org.alfresco.repo.webservice.types.Node[] get(org.alfresco.repo.webservice.types.Predicate where) throws java.rmi.RemoteException, org.alfresco.repo.webservice.repository.RepositoryFault; -} diff --git a/source/generated/org/alfresco/repo/webservice/repository/UpdateResult.java b/source/generated/org/alfresco/repo/webservice/repository/UpdateResult.java deleted file mode 100644 index 71d1cfaa68..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/UpdateResult.java +++ /dev/null @@ -1,263 +0,0 @@ -/** - * UpdateResult.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.repository; - -public class UpdateResult implements java.io.Serializable { - private java.lang.String statement; - - private org.alfresco.repo.webservice.types.ResultSet updateCount; - - private java.lang.String sourceId; - - private org.alfresco.repo.webservice.types.Reference source; - - private org.alfresco.repo.webservice.types.Reference destination; - - public UpdateResult() { - } - - public UpdateResult( - java.lang.String statement, - org.alfresco.repo.webservice.types.ResultSet updateCount, - java.lang.String sourceId, - org.alfresco.repo.webservice.types.Reference source, - org.alfresco.repo.webservice.types.Reference destination) { - this.statement = statement; - this.updateCount = updateCount; - this.sourceId = sourceId; - this.source = source; - this.destination = destination; - } - - - /** - * Gets the statement value for this UpdateResult. - * - * @return statement - */ - public java.lang.String getStatement() { - return statement; - } - - - /** - * Sets the statement value for this UpdateResult. - * - * @param statement - */ - public void setStatement(java.lang.String statement) { - this.statement = statement; - } - - - /** - * Gets the updateCount value for this UpdateResult. - * - * @return updateCount - */ - public org.alfresco.repo.webservice.types.ResultSet getUpdateCount() { - return updateCount; - } - - - /** - * Sets the updateCount value for this UpdateResult. - * - * @param updateCount - */ - public void setUpdateCount(org.alfresco.repo.webservice.types.ResultSet updateCount) { - this.updateCount = updateCount; - } - - - /** - * Gets the sourceId value for this UpdateResult. - * - * @return sourceId - */ - public java.lang.String getSourceId() { - return sourceId; - } - - - /** - * Sets the sourceId value for this UpdateResult. - * - * @param sourceId - */ - public void setSourceId(java.lang.String sourceId) { - this.sourceId = sourceId; - } - - - /** - * Gets the source value for this UpdateResult. - * - * @return source - */ - public org.alfresco.repo.webservice.types.Reference getSource() { - return source; - } - - - /** - * Sets the source value for this UpdateResult. - * - * @param source - */ - public void setSource(org.alfresco.repo.webservice.types.Reference source) { - this.source = source; - } - - - /** - * Gets the destination value for this UpdateResult. - * - * @return destination - */ - public org.alfresco.repo.webservice.types.Reference getDestination() { - return destination; - } - - - /** - * Sets the destination value for this UpdateResult. - * - * @param destination - */ - public void setDestination(org.alfresco.repo.webservice.types.Reference destination) { - this.destination = destination; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof UpdateResult)) return false; - UpdateResult other = (UpdateResult) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.statement==null && other.getStatement()==null) || - (this.statement!=null && - this.statement.equals(other.getStatement()))) && - ((this.updateCount==null && other.getUpdateCount()==null) || - (this.updateCount!=null && - this.updateCount.equals(other.getUpdateCount()))) && - ((this.sourceId==null && other.getSourceId()==null) || - (this.sourceId!=null && - this.sourceId.equals(other.getSourceId()))) && - ((this.source==null && other.getSource()==null) || - (this.source!=null && - this.source.equals(other.getSource()))) && - ((this.destination==null && other.getDestination()==null) || - (this.destination!=null && - this.destination.equals(other.getDestination()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getStatement() != null) { - _hashCode += getStatement().hashCode(); - } - if (getUpdateCount() != null) { - _hashCode += getUpdateCount().hashCode(); - } - if (getSourceId() != null) { - _hashCode += getSourceId().hashCode(); - } - if (getSource() != null) { - _hashCode += getSource().hashCode(); - } - if (getDestination() != null) { - _hashCode += getDestination().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(UpdateResult.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "UpdateResult")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("statement"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "statement")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("updateCount"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "updateCount")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ResultSet")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("sourceId"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "sourceId")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("source"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "source")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Reference")); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("destination"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/service/repository/1.0", "destination")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Reference")); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/repository/deploy.wsdd b/source/generated/org/alfresco/repo/webservice/repository/deploy.wsdd deleted file mode 100644 index 2853e8a04d..0000000000 --- a/source/generated/org/alfresco/repo/webservice/repository/deploy.wsdd +++ /dev/null @@ -1,460 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/generated/org/alfresco/repo/webservice/types/AssociationDefinition.java b/source/generated/org/alfresco/repo/webservice/types/AssociationDefinition.java deleted file mode 100644 index e9a0f5d382..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/AssociationDefinition.java +++ /dev/null @@ -1,335 +0,0 @@ -/** - * AssociationDefinition.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class AssociationDefinition implements java.io.Serializable { - private java.lang.String name; - - private java.lang.String title; - - private java.lang.String description; - - private boolean isChild; - - private org.alfresco.repo.webservice.types.RoleDefinition sourceRole; - - private org.alfresco.repo.webservice.types.RoleDefinition targetRole; - - private java.lang.String targetClass; - - public AssociationDefinition() { - } - - public AssociationDefinition( - java.lang.String name, - java.lang.String title, - java.lang.String description, - boolean isChild, - org.alfresco.repo.webservice.types.RoleDefinition sourceRole, - org.alfresco.repo.webservice.types.RoleDefinition targetRole, - java.lang.String targetClass) { - this.name = name; - this.title = title; - this.description = description; - this.isChild = isChild; - this.sourceRole = sourceRole; - this.targetRole = targetRole; - this.targetClass = targetClass; - } - - - /** - * Gets the name value for this AssociationDefinition. - * - * @return name - */ - public java.lang.String getName() { - return name; - } - - - /** - * Sets the name value for this AssociationDefinition. - * - * @param name - */ - public void setName(java.lang.String name) { - this.name = name; - } - - - /** - * Gets the title value for this AssociationDefinition. - * - * @return title - */ - public java.lang.String getTitle() { - return title; - } - - - /** - * Sets the title value for this AssociationDefinition. - * - * @param title - */ - public void setTitle(java.lang.String title) { - this.title = title; - } - - - /** - * Gets the description value for this AssociationDefinition. - * - * @return description - */ - public java.lang.String getDescription() { - return description; - } - - - /** - * Sets the description value for this AssociationDefinition. - * - * @param description - */ - public void setDescription(java.lang.String description) { - this.description = description; - } - - - /** - * Gets the isChild value for this AssociationDefinition. - * - * @return isChild - */ - public boolean isIsChild() { - return isChild; - } - - - /** - * Sets the isChild value for this AssociationDefinition. - * - * @param isChild - */ - public void setIsChild(boolean isChild) { - this.isChild = isChild; - } - - - /** - * Gets the sourceRole value for this AssociationDefinition. - * - * @return sourceRole - */ - public org.alfresco.repo.webservice.types.RoleDefinition getSourceRole() { - return sourceRole; - } - - - /** - * Sets the sourceRole value for this AssociationDefinition. - * - * @param sourceRole - */ - public void setSourceRole(org.alfresco.repo.webservice.types.RoleDefinition sourceRole) { - this.sourceRole = sourceRole; - } - - - /** - * Gets the targetRole value for this AssociationDefinition. - * - * @return targetRole - */ - public org.alfresco.repo.webservice.types.RoleDefinition getTargetRole() { - return targetRole; - } - - - /** - * Sets the targetRole value for this AssociationDefinition. - * - * @param targetRole - */ - public void setTargetRole(org.alfresco.repo.webservice.types.RoleDefinition targetRole) { - this.targetRole = targetRole; - } - - - /** - * Gets the targetClass value for this AssociationDefinition. - * - * @return targetClass - */ - public java.lang.String getTargetClass() { - return targetClass; - } - - - /** - * Sets the targetClass value for this AssociationDefinition. - * - * @param targetClass - */ - public void setTargetClass(java.lang.String targetClass) { - this.targetClass = targetClass; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof AssociationDefinition)) return false; - AssociationDefinition other = (AssociationDefinition) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.name==null && other.getName()==null) || - (this.name!=null && - this.name.equals(other.getName()))) && - ((this.title==null && other.getTitle()==null) || - (this.title!=null && - this.title.equals(other.getTitle()))) && - ((this.description==null && other.getDescription()==null) || - (this.description!=null && - this.description.equals(other.getDescription()))) && - this.isChild == other.isIsChild() && - ((this.sourceRole==null && other.getSourceRole()==null) || - (this.sourceRole!=null && - this.sourceRole.equals(other.getSourceRole()))) && - ((this.targetRole==null && other.getTargetRole()==null) || - (this.targetRole!=null && - this.targetRole.equals(other.getTargetRole()))) && - ((this.targetClass==null && other.getTargetClass()==null) || - (this.targetClass!=null && - this.targetClass.equals(other.getTargetClass()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getName() != null) { - _hashCode += getName().hashCode(); - } - if (getTitle() != null) { - _hashCode += getTitle().hashCode(); - } - if (getDescription() != null) { - _hashCode += getDescription().hashCode(); - } - _hashCode += (isIsChild() ? Boolean.TRUE : Boolean.FALSE).hashCode(); - if (getSourceRole() != null) { - _hashCode += getSourceRole().hashCode(); - } - if (getTargetRole() != null) { - _hashCode += getTargetRole().hashCode(); - } - if (getTargetClass() != null) { - _hashCode += getTargetClass().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(AssociationDefinition.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "AssociationDefinition")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("name"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "name")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("title"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "title")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("description"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "description")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("isChild"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "isChild")); - 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("sourceRole"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "sourceRole")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "RoleDefinition")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("targetRole"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "targetRole")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "RoleDefinition")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("targetClass"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "targetClass")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CML.java b/source/generated/org/alfresco/repo/webservice/types/CML.java deleted file mode 100644 index 0c8587c9ef..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CML.java +++ /dev/null @@ -1,731 +0,0 @@ -/** - * CML.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CML implements java.io.Serializable { - private org.alfresco.repo.webservice.types.CMLCreate[] create; - - private org.alfresco.repo.webservice.types.CMLAddAspect[] addAspect; - - private org.alfresco.repo.webservice.types.CMLRemoveAspect[] removeAspect; - - private org.alfresco.repo.webservice.types.CMLUpdate[] update; - - private org.alfresco.repo.webservice.types.CMLWriteContent[] writeContent; - - private org.alfresco.repo.webservice.types.CMLDelete[] delete; - - private org.alfresco.repo.webservice.types.CMLMove[] move; - - private org.alfresco.repo.webservice.types.CMLCopy[] copy; - - private org.alfresco.repo.webservice.types.CMLAddChild[] addChild; - - private org.alfresco.repo.webservice.types.CMLRemoveChild[] removeChild; - - private org.alfresco.repo.webservice.types.CMLCreateAssociation[] createAssociation; - - private org.alfresco.repo.webservice.types.CMLRemoveAssociation[] removeAssociation; - - public CML() { - } - - public CML( - org.alfresco.repo.webservice.types.CMLCreate[] create, - org.alfresco.repo.webservice.types.CMLAddAspect[] addAspect, - org.alfresco.repo.webservice.types.CMLRemoveAspect[] removeAspect, - org.alfresco.repo.webservice.types.CMLUpdate[] update, - org.alfresco.repo.webservice.types.CMLWriteContent[] writeContent, - org.alfresco.repo.webservice.types.CMLDelete[] delete, - org.alfresco.repo.webservice.types.CMLMove[] move, - org.alfresco.repo.webservice.types.CMLCopy[] copy, - org.alfresco.repo.webservice.types.CMLAddChild[] addChild, - org.alfresco.repo.webservice.types.CMLRemoveChild[] removeChild, - org.alfresco.repo.webservice.types.CMLCreateAssociation[] createAssociation, - org.alfresco.repo.webservice.types.CMLRemoveAssociation[] removeAssociation) { - this.create = create; - this.addAspect = addAspect; - this.removeAspect = removeAspect; - this.update = update; - this.writeContent = writeContent; - this.delete = delete; - this.move = move; - this.copy = copy; - this.addChild = addChild; - this.removeChild = removeChild; - this.createAssociation = createAssociation; - this.removeAssociation = removeAssociation; - } - - - /** - * Gets the create value for this CML. - * - * @return create - */ - public org.alfresco.repo.webservice.types.CMLCreate[] getCreate() { - return create; - } - - - /** - * Sets the create value for this CML. - * - * @param create - */ - public void setCreate(org.alfresco.repo.webservice.types.CMLCreate[] create) { - this.create = create; - } - - public org.alfresco.repo.webservice.types.CMLCreate getCreate(int i) { - return this.create[i]; - } - - public void setCreate(int i, org.alfresco.repo.webservice.types.CMLCreate _value) { - this.create[i] = _value; - } - - - /** - * Gets the addAspect value for this CML. - * - * @return addAspect - */ - public org.alfresco.repo.webservice.types.CMLAddAspect[] getAddAspect() { - return addAspect; - } - - - /** - * Sets the addAspect value for this CML. - * - * @param addAspect - */ - public void setAddAspect(org.alfresco.repo.webservice.types.CMLAddAspect[] addAspect) { - this.addAspect = addAspect; - } - - public org.alfresco.repo.webservice.types.CMLAddAspect getAddAspect(int i) { - return this.addAspect[i]; - } - - public void setAddAspect(int i, org.alfresco.repo.webservice.types.CMLAddAspect _value) { - this.addAspect[i] = _value; - } - - - /** - * Gets the removeAspect value for this CML. - * - * @return removeAspect - */ - public org.alfresco.repo.webservice.types.CMLRemoveAspect[] getRemoveAspect() { - return removeAspect; - } - - - /** - * Sets the removeAspect value for this CML. - * - * @param removeAspect - */ - public void setRemoveAspect(org.alfresco.repo.webservice.types.CMLRemoveAspect[] removeAspect) { - this.removeAspect = removeAspect; - } - - public org.alfresco.repo.webservice.types.CMLRemoveAspect getRemoveAspect(int i) { - return this.removeAspect[i]; - } - - public void setRemoveAspect(int i, org.alfresco.repo.webservice.types.CMLRemoveAspect _value) { - this.removeAspect[i] = _value; - } - - - /** - * Gets the update value for this CML. - * - * @return update - */ - public org.alfresco.repo.webservice.types.CMLUpdate[] getUpdate() { - return update; - } - - - /** - * Sets the update value for this CML. - * - * @param update - */ - public void setUpdate(org.alfresco.repo.webservice.types.CMLUpdate[] update) { - this.update = update; - } - - public org.alfresco.repo.webservice.types.CMLUpdate getUpdate(int i) { - return this.update[i]; - } - - public void setUpdate(int i, org.alfresco.repo.webservice.types.CMLUpdate _value) { - this.update[i] = _value; - } - - - /** - * Gets the writeContent value for this CML. - * - * @return writeContent - */ - public org.alfresco.repo.webservice.types.CMLWriteContent[] getWriteContent() { - return writeContent; - } - - - /** - * Sets the writeContent value for this CML. - * - * @param writeContent - */ - public void setWriteContent(org.alfresco.repo.webservice.types.CMLWriteContent[] writeContent) { - this.writeContent = writeContent; - } - - public org.alfresco.repo.webservice.types.CMLWriteContent getWriteContent(int i) { - return this.writeContent[i]; - } - - public void setWriteContent(int i, org.alfresco.repo.webservice.types.CMLWriteContent _value) { - this.writeContent[i] = _value; - } - - - /** - * Gets the delete value for this CML. - * - * @return delete - */ - public org.alfresco.repo.webservice.types.CMLDelete[] getDelete() { - return delete; - } - - - /** - * Sets the delete value for this CML. - * - * @param delete - */ - public void setDelete(org.alfresco.repo.webservice.types.CMLDelete[] delete) { - this.delete = delete; - } - - public org.alfresco.repo.webservice.types.CMLDelete getDelete(int i) { - return this.delete[i]; - } - - public void setDelete(int i, org.alfresco.repo.webservice.types.CMLDelete _value) { - this.delete[i] = _value; - } - - - /** - * Gets the move value for this CML. - * - * @return move - */ - public org.alfresco.repo.webservice.types.CMLMove[] getMove() { - return move; - } - - - /** - * Sets the move value for this CML. - * - * @param move - */ - public void setMove(org.alfresco.repo.webservice.types.CMLMove[] move) { - this.move = move; - } - - public org.alfresco.repo.webservice.types.CMLMove getMove(int i) { - return this.move[i]; - } - - public void setMove(int i, org.alfresco.repo.webservice.types.CMLMove _value) { - this.move[i] = _value; - } - - - /** - * Gets the copy value for this CML. - * - * @return copy - */ - public org.alfresco.repo.webservice.types.CMLCopy[] getCopy() { - return copy; - } - - - /** - * Sets the copy value for this CML. - * - * @param copy - */ - public void setCopy(org.alfresco.repo.webservice.types.CMLCopy[] copy) { - this.copy = copy; - } - - public org.alfresco.repo.webservice.types.CMLCopy getCopy(int i) { - return this.copy[i]; - } - - public void setCopy(int i, org.alfresco.repo.webservice.types.CMLCopy _value) { - this.copy[i] = _value; - } - - - /** - * Gets the addChild value for this CML. - * - * @return addChild - */ - public org.alfresco.repo.webservice.types.CMLAddChild[] getAddChild() { - return addChild; - } - - - /** - * Sets the addChild value for this CML. - * - * @param addChild - */ - public void setAddChild(org.alfresco.repo.webservice.types.CMLAddChild[] addChild) { - this.addChild = addChild; - } - - public org.alfresco.repo.webservice.types.CMLAddChild getAddChild(int i) { - return this.addChild[i]; - } - - public void setAddChild(int i, org.alfresco.repo.webservice.types.CMLAddChild _value) { - this.addChild[i] = _value; - } - - - /** - * Gets the removeChild value for this CML. - * - * @return removeChild - */ - public org.alfresco.repo.webservice.types.CMLRemoveChild[] getRemoveChild() { - return removeChild; - } - - - /** - * Sets the removeChild value for this CML. - * - * @param removeChild - */ - public void setRemoveChild(org.alfresco.repo.webservice.types.CMLRemoveChild[] removeChild) { - this.removeChild = removeChild; - } - - public org.alfresco.repo.webservice.types.CMLRemoveChild getRemoveChild(int i) { - return this.removeChild[i]; - } - - public void setRemoveChild(int i, org.alfresco.repo.webservice.types.CMLRemoveChild _value) { - this.removeChild[i] = _value; - } - - - /** - * Gets the createAssociation value for this CML. - * - * @return createAssociation - */ - public org.alfresco.repo.webservice.types.CMLCreateAssociation[] getCreateAssociation() { - return createAssociation; - } - - - /** - * Sets the createAssociation value for this CML. - * - * @param createAssociation - */ - public void setCreateAssociation(org.alfresco.repo.webservice.types.CMLCreateAssociation[] createAssociation) { - this.createAssociation = createAssociation; - } - - public org.alfresco.repo.webservice.types.CMLCreateAssociation getCreateAssociation(int i) { - return this.createAssociation[i]; - } - - public void setCreateAssociation(int i, org.alfresco.repo.webservice.types.CMLCreateAssociation _value) { - this.createAssociation[i] = _value; - } - - - /** - * Gets the removeAssociation value for this CML. - * - * @return removeAssociation - */ - public org.alfresco.repo.webservice.types.CMLRemoveAssociation[] getRemoveAssociation() { - return removeAssociation; - } - - - /** - * Sets the removeAssociation value for this CML. - * - * @param removeAssociation - */ - public void setRemoveAssociation(org.alfresco.repo.webservice.types.CMLRemoveAssociation[] removeAssociation) { - this.removeAssociation = removeAssociation; - } - - public org.alfresco.repo.webservice.types.CMLRemoveAssociation getRemoveAssociation(int i) { - return this.removeAssociation[i]; - } - - public void setRemoveAssociation(int i, org.alfresco.repo.webservice.types.CMLRemoveAssociation _value) { - this.removeAssociation[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CML)) return false; - CML other = (CML) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.create==null && other.getCreate()==null) || - (this.create!=null && - java.util.Arrays.equals(this.create, other.getCreate()))) && - ((this.addAspect==null && other.getAddAspect()==null) || - (this.addAspect!=null && - java.util.Arrays.equals(this.addAspect, other.getAddAspect()))) && - ((this.removeAspect==null && other.getRemoveAspect()==null) || - (this.removeAspect!=null && - java.util.Arrays.equals(this.removeAspect, other.getRemoveAspect()))) && - ((this.update==null && other.getUpdate()==null) || - (this.update!=null && - java.util.Arrays.equals(this.update, other.getUpdate()))) && - ((this.writeContent==null && other.getWriteContent()==null) || - (this.writeContent!=null && - java.util.Arrays.equals(this.writeContent, other.getWriteContent()))) && - ((this.delete==null && other.getDelete()==null) || - (this.delete!=null && - java.util.Arrays.equals(this.delete, other.getDelete()))) && - ((this.move==null && other.getMove()==null) || - (this.move!=null && - java.util.Arrays.equals(this.move, other.getMove()))) && - ((this.copy==null && other.getCopy()==null) || - (this.copy!=null && - java.util.Arrays.equals(this.copy, other.getCopy()))) && - ((this.addChild==null && other.getAddChild()==null) || - (this.addChild!=null && - java.util.Arrays.equals(this.addChild, other.getAddChild()))) && - ((this.removeChild==null && other.getRemoveChild()==null) || - (this.removeChild!=null && - java.util.Arrays.equals(this.removeChild, other.getRemoveChild()))) && - ((this.createAssociation==null && other.getCreateAssociation()==null) || - (this.createAssociation!=null && - java.util.Arrays.equals(this.createAssociation, other.getCreateAssociation()))) && - ((this.removeAssociation==null && other.getRemoveAssociation()==null) || - (this.removeAssociation!=null && - java.util.Arrays.equals(this.removeAssociation, other.getRemoveAssociation()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getCreate() != null) { - for (int i=0; - iCML>create")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("addAspect"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "addAspect")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>addAspect")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("removeAspect"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "removeAspect")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeAspect")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("update"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "update")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>update")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("writeContent"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "writeContent")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>writeContent")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("delete"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "delete")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>delete")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("move"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "move")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>move")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("copy"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "copy")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>copy")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("addChild"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "addChild")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>addChild")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("removeChild"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "removeChild")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeChild")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("createAssociation"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "createAssociation")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>createAssociation")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("removeAssociation"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "removeAssociation")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeAssociation")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLAddAspect.java b/source/generated/org/alfresco/repo/webservice/types/CMLAddAspect.java deleted file mode 100644 index 9f7400be16..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLAddAspect.java +++ /dev/null @@ -1,247 +0,0 @@ -/** - * CMLAddAspect.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLAddAspect implements java.io.Serializable { - private java.lang.String aspect; - - private org.alfresco.repo.webservice.types.NamedValue[] property; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLAddAspect() { - } - - public CMLAddAspect( - java.lang.String aspect, - org.alfresco.repo.webservice.types.NamedValue[] property, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.aspect = aspect; - this.property = property; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the aspect value for this CMLAddAspect. - * - * @return aspect - */ - public java.lang.String getAspect() { - return aspect; - } - - - /** - * Sets the aspect value for this CMLAddAspect. - * - * @param aspect - */ - public void setAspect(java.lang.String aspect) { - this.aspect = aspect; - } - - - /** - * Gets the property value for this CMLAddAspect. - * - * @return property - */ - public org.alfresco.repo.webservice.types.NamedValue[] getProperty() { - return property; - } - - - /** - * Sets the property value for this CMLAddAspect. - * - * @param property - */ - public void setProperty(org.alfresco.repo.webservice.types.NamedValue[] property) { - this.property = property; - } - - public org.alfresco.repo.webservice.types.NamedValue getProperty(int i) { - return this.property[i]; - } - - public void setProperty(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.property[i] = _value; - } - - - /** - * Gets the where value for this CMLAddAspect. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLAddAspect. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLAddAspect. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLAddAspect. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLAddAspect)) return false; - CMLAddAspect other = (CMLAddAspect) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.aspect==null && other.getAspect()==null) || - (this.aspect!=null && - this.aspect.equals(other.getAspect()))) && - ((this.property==null && other.getProperty()==null) || - (this.property!=null && - java.util.Arrays.equals(this.property, other.getProperty()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getAspect() != null) { - _hashCode += getAspect().hashCode(); - } - if (getProperty() != null) { - for (int i=0; - iCML>addAspect")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("aspect"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "aspect")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("property"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "property")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "NamedValue")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLAddChild.java b/source/generated/org/alfresco/repo/webservice/types/CMLAddChild.java deleted file mode 100644 index 3317866ddd..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLAddChild.java +++ /dev/null @@ -1,305 +0,0 @@ -/** - * CMLAddChild.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLAddChild implements java.io.Serializable { - private org.alfresco.repo.webservice.types.ParentReference to; - - private java.lang.String to_id; - - private java.lang.String associationType; - - private java.lang.String childName; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLAddChild() { - } - - public CMLAddChild( - org.alfresco.repo.webservice.types.ParentReference to, - java.lang.String to_id, - java.lang.String associationType, - java.lang.String childName, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.to = to; - this.to_id = to_id; - this.associationType = associationType; - this.childName = childName; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the to value for this CMLAddChild. - * - * @return to - */ - public org.alfresco.repo.webservice.types.ParentReference getTo() { - return to; - } - - - /** - * Sets the to value for this CMLAddChild. - * - * @param to - */ - public void setTo(org.alfresco.repo.webservice.types.ParentReference to) { - this.to = to; - } - - - /** - * Gets the to_id value for this CMLAddChild. - * - * @return to_id - */ - public java.lang.String getTo_id() { - return to_id; - } - - - /** - * Sets the to_id value for this CMLAddChild. - * - * @param to_id - */ - public void setTo_id(java.lang.String to_id) { - this.to_id = to_id; - } - - - /** - * Gets the associationType value for this CMLAddChild. - * - * @return associationType - */ - public java.lang.String getAssociationType() { - return associationType; - } - - - /** - * Sets the associationType value for this CMLAddChild. - * - * @param associationType - */ - public void setAssociationType(java.lang.String associationType) { - this.associationType = associationType; - } - - - /** - * Gets the childName value for this CMLAddChild. - * - * @return childName - */ - public java.lang.String getChildName() { - return childName; - } - - - /** - * Sets the childName value for this CMLAddChild. - * - * @param childName - */ - public void setChildName(java.lang.String childName) { - this.childName = childName; - } - - - /** - * Gets the where value for this CMLAddChild. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLAddChild. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLAddChild. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLAddChild. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLAddChild)) return false; - CMLAddChild other = (CMLAddChild) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.to==null && other.getTo()==null) || - (this.to!=null && - this.to.equals(other.getTo()))) && - ((this.to_id==null && other.getTo_id()==null) || - (this.to_id!=null && - this.to_id.equals(other.getTo_id()))) && - ((this.associationType==null && other.getAssociationType()==null) || - (this.associationType!=null && - this.associationType.equals(other.getAssociationType()))) && - ((this.childName==null && other.getChildName()==null) || - (this.childName!=null && - this.childName.equals(other.getChildName()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getTo() != null) { - _hashCode += getTo().hashCode(); - } - if (getTo_id() != null) { - _hashCode += getTo_id().hashCode(); - } - if (getAssociationType() != null) { - _hashCode += getAssociationType().hashCode(); - } - if (getChildName() != null) { - _hashCode += getChildName().hashCode(); - } - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - if (getWhere_id() != null) { - _hashCode += getWhere_id().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLAddChild.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>addChild")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ParentReference")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("associationType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "associationType")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("childName"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "childName")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLCopy.java b/source/generated/org/alfresco/repo/webservice/types/CMLCopy.java deleted file mode 100644 index a84feed2f4..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLCopy.java +++ /dev/null @@ -1,342 +0,0 @@ -/** - * CMLCopy.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLCopy implements java.io.Serializable { - private org.alfresco.repo.webservice.types.ParentReference to; - - private java.lang.String to_id; - - private java.lang.String associationType; - - private java.lang.String childName; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - private java.lang.Boolean children; - - public CMLCopy() { - } - - public CMLCopy( - org.alfresco.repo.webservice.types.ParentReference to, - java.lang.String to_id, - java.lang.String associationType, - java.lang.String childName, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id, - java.lang.Boolean children) { - this.to = to; - this.to_id = to_id; - this.associationType = associationType; - this.childName = childName; - this.where = where; - this.where_id = where_id; - this.children = children; - } - - - /** - * Gets the to value for this CMLCopy. - * - * @return to - */ - public org.alfresco.repo.webservice.types.ParentReference getTo() { - return to; - } - - - /** - * Sets the to value for this CMLCopy. - * - * @param to - */ - public void setTo(org.alfresco.repo.webservice.types.ParentReference to) { - this.to = to; - } - - - /** - * Gets the to_id value for this CMLCopy. - * - * @return to_id - */ - public java.lang.String getTo_id() { - return to_id; - } - - - /** - * Sets the to_id value for this CMLCopy. - * - * @param to_id - */ - public void setTo_id(java.lang.String to_id) { - this.to_id = to_id; - } - - - /** - * Gets the associationType value for this CMLCopy. - * - * @return associationType - */ - public java.lang.String getAssociationType() { - return associationType; - } - - - /** - * Sets the associationType value for this CMLCopy. - * - * @param associationType - */ - public void setAssociationType(java.lang.String associationType) { - this.associationType = associationType; - } - - - /** - * Gets the childName value for this CMLCopy. - * - * @return childName - */ - public java.lang.String getChildName() { - return childName; - } - - - /** - * Sets the childName value for this CMLCopy. - * - * @param childName - */ - public void setChildName(java.lang.String childName) { - this.childName = childName; - } - - - /** - * Gets the where value for this CMLCopy. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLCopy. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLCopy. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLCopy. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - - /** - * Gets the children value for this CMLCopy. - * - * @return children - */ - public java.lang.Boolean getChildren() { - return children; - } - - - /** - * Sets the children value for this CMLCopy. - * - * @param children - */ - public void setChildren(java.lang.Boolean children) { - this.children = children; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLCopy)) return false; - CMLCopy other = (CMLCopy) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.to==null && other.getTo()==null) || - (this.to!=null && - this.to.equals(other.getTo()))) && - ((this.to_id==null && other.getTo_id()==null) || - (this.to_id!=null && - this.to_id.equals(other.getTo_id()))) && - ((this.associationType==null && other.getAssociationType()==null) || - (this.associationType!=null && - this.associationType.equals(other.getAssociationType()))) && - ((this.childName==null && other.getChildName()==null) || - (this.childName!=null && - this.childName.equals(other.getChildName()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))) && - ((this.children==null && other.getChildren()==null) || - (this.children!=null && - this.children.equals(other.getChildren()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getTo() != null) { - _hashCode += getTo().hashCode(); - } - if (getTo_id() != null) { - _hashCode += getTo_id().hashCode(); - } - if (getAssociationType() != null) { - _hashCode += getAssociationType().hashCode(); - } - if (getChildName() != null) { - _hashCode += getChildName().hashCode(); - } - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - if (getWhere_id() != null) { - _hashCode += getWhere_id().hashCode(); - } - if (getChildren() != null) { - _hashCode += getChildren().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLCopy.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>copy")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ParentReference")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("associationType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "associationType")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("childName"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "childName")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("children"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "children")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean")); - elemField.setMinOccurs(0); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLCreate.java b/source/generated/org/alfresco/repo/webservice/types/CMLCreate.java deleted file mode 100644 index 31f5e5a692..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLCreate.java +++ /dev/null @@ -1,359 +0,0 @@ -/** - * CMLCreate.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLCreate implements java.io.Serializable { - private java.lang.String id; - - private org.alfresco.repo.webservice.types.ParentReference parent; - - private java.lang.String parent_id; - - private java.lang.String associationType; - - private java.lang.String childName; - - private java.lang.String type; - - private org.alfresco.repo.webservice.types.NamedValue[] property; - - public CMLCreate() { - } - - public CMLCreate( - java.lang.String id, - org.alfresco.repo.webservice.types.ParentReference parent, - java.lang.String parent_id, - java.lang.String associationType, - java.lang.String childName, - java.lang.String type, - org.alfresco.repo.webservice.types.NamedValue[] property) { - this.id = id; - this.parent = parent; - this.parent_id = parent_id; - this.associationType = associationType; - this.childName = childName; - this.type = type; - this.property = property; - } - - - /** - * Gets the id value for this CMLCreate. - * - * @return id - */ - public java.lang.String getId() { - return id; - } - - - /** - * Sets the id value for this CMLCreate. - * - * @param id - */ - public void setId(java.lang.String id) { - this.id = id; - } - - - /** - * Gets the parent value for this CMLCreate. - * - * @return parent - */ - public org.alfresco.repo.webservice.types.ParentReference getParent() { - return parent; - } - - - /** - * Sets the parent value for this CMLCreate. - * - * @param parent - */ - public void setParent(org.alfresco.repo.webservice.types.ParentReference parent) { - this.parent = parent; - } - - - /** - * Gets the parent_id value for this CMLCreate. - * - * @return parent_id - */ - public java.lang.String getParent_id() { - return parent_id; - } - - - /** - * Sets the parent_id value for this CMLCreate. - * - * @param parent_id - */ - public void setParent_id(java.lang.String parent_id) { - this.parent_id = parent_id; - } - - - /** - * Gets the associationType value for this CMLCreate. - * - * @return associationType - */ - public java.lang.String getAssociationType() { - return associationType; - } - - - /** - * Sets the associationType value for this CMLCreate. - * - * @param associationType - */ - public void setAssociationType(java.lang.String associationType) { - this.associationType = associationType; - } - - - /** - * Gets the childName value for this CMLCreate. - * - * @return childName - */ - public java.lang.String getChildName() { - return childName; - } - - - /** - * Sets the childName value for this CMLCreate. - * - * @param childName - */ - public void setChildName(java.lang.String childName) { - this.childName = childName; - } - - - /** - * Gets the type value for this CMLCreate. - * - * @return type - */ - public java.lang.String getType() { - return type; - } - - - /** - * Sets the type value for this CMLCreate. - * - * @param type - */ - public void setType(java.lang.String type) { - this.type = type; - } - - - /** - * Gets the property value for this CMLCreate. - * - * @return property - */ - public org.alfresco.repo.webservice.types.NamedValue[] getProperty() { - return property; - } - - - /** - * Sets the property value for this CMLCreate. - * - * @param property - */ - public void setProperty(org.alfresco.repo.webservice.types.NamedValue[] property) { - this.property = property; - } - - public org.alfresco.repo.webservice.types.NamedValue getProperty(int i) { - return this.property[i]; - } - - public void setProperty(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.property[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLCreate)) return false; - CMLCreate other = (CMLCreate) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.id==null && other.getId()==null) || - (this.id!=null && - this.id.equals(other.getId()))) && - ((this.parent==null && other.getParent()==null) || - (this.parent!=null && - this.parent.equals(other.getParent()))) && - ((this.parent_id==null && other.getParent_id()==null) || - (this.parent_id!=null && - this.parent_id.equals(other.getParent_id()))) && - ((this.associationType==null && other.getAssociationType()==null) || - (this.associationType!=null && - this.associationType.equals(other.getAssociationType()))) && - ((this.childName==null && other.getChildName()==null) || - (this.childName!=null && - this.childName.equals(other.getChildName()))) && - ((this.type==null && other.getType()==null) || - (this.type!=null && - this.type.equals(other.getType()))) && - ((this.property==null && other.getProperty()==null) || - (this.property!=null && - java.util.Arrays.equals(this.property, other.getProperty()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getId() != null) { - _hashCode += getId().hashCode(); - } - if (getParent() != null) { - _hashCode += getParent().hashCode(); - } - if (getParent_id() != null) { - _hashCode += getParent_id().hashCode(); - } - if (getAssociationType() != null) { - _hashCode += getAssociationType().hashCode(); - } - if (getChildName() != null) { - _hashCode += getChildName().hashCode(); - } - if (getType() != null) { - _hashCode += getType().hashCode(); - } - if (getProperty() != null) { - for (int i=0; - iCML>create")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("parent"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "parent")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ParentReference")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("parent_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "parent_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("associationType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "associationType")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("childName"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "childName")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("type"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "type")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("property"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "property")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "NamedValue")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLCreateAssociation.java b/source/generated/org/alfresco/repo/webservice/types/CMLCreateAssociation.java deleted file mode 100644 index d9a78b5b89..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLCreateAssociation.java +++ /dev/null @@ -1,267 +0,0 @@ -/** - * CMLCreateAssociation.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLCreateAssociation implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Predicate from; - - private java.lang.String from_id; - - private org.alfresco.repo.webservice.types.Predicate to; - - private java.lang.String to_id; - - private java.lang.String association; - - public CMLCreateAssociation() { - } - - public CMLCreateAssociation( - org.alfresco.repo.webservice.types.Predicate from, - java.lang.String from_id, - org.alfresco.repo.webservice.types.Predicate to, - java.lang.String to_id, - java.lang.String association) { - this.from = from; - this.from_id = from_id; - this.to = to; - this.to_id = to_id; - this.association = association; - } - - - /** - * Gets the from value for this CMLCreateAssociation. - * - * @return from - */ - public org.alfresco.repo.webservice.types.Predicate getFrom() { - return from; - } - - - /** - * Sets the from value for this CMLCreateAssociation. - * - * @param from - */ - public void setFrom(org.alfresco.repo.webservice.types.Predicate from) { - this.from = from; - } - - - /** - * Gets the from_id value for this CMLCreateAssociation. - * - * @return from_id - */ - public java.lang.String getFrom_id() { - return from_id; - } - - - /** - * Sets the from_id value for this CMLCreateAssociation. - * - * @param from_id - */ - public void setFrom_id(java.lang.String from_id) { - this.from_id = from_id; - } - - - /** - * Gets the to value for this CMLCreateAssociation. - * - * @return to - */ - public org.alfresco.repo.webservice.types.Predicate getTo() { - return to; - } - - - /** - * Sets the to value for this CMLCreateAssociation. - * - * @param to - */ - public void setTo(org.alfresco.repo.webservice.types.Predicate to) { - this.to = to; - } - - - /** - * Gets the to_id value for this CMLCreateAssociation. - * - * @return to_id - */ - public java.lang.String getTo_id() { - return to_id; - } - - - /** - * Sets the to_id value for this CMLCreateAssociation. - * - * @param to_id - */ - public void setTo_id(java.lang.String to_id) { - this.to_id = to_id; - } - - - /** - * Gets the association value for this CMLCreateAssociation. - * - * @return association - */ - public java.lang.String getAssociation() { - return association; - } - - - /** - * Sets the association value for this CMLCreateAssociation. - * - * @param association - */ - public void setAssociation(java.lang.String association) { - this.association = association; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLCreateAssociation)) return false; - CMLCreateAssociation other = (CMLCreateAssociation) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.from==null && other.getFrom()==null) || - (this.from!=null && - this.from.equals(other.getFrom()))) && - ((this.from_id==null && other.getFrom_id()==null) || - (this.from_id!=null && - this.from_id.equals(other.getFrom_id()))) && - ((this.to==null && other.getTo()==null) || - (this.to!=null && - this.to.equals(other.getTo()))) && - ((this.to_id==null && other.getTo_id()==null) || - (this.to_id!=null && - this.to_id.equals(other.getTo_id()))) && - ((this.association==null && other.getAssociation()==null) || - (this.association!=null && - this.association.equals(other.getAssociation()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getFrom() != null) { - _hashCode += getFrom().hashCode(); - } - if (getFrom_id() != null) { - _hashCode += getFrom_id().hashCode(); - } - if (getTo() != null) { - _hashCode += getTo().hashCode(); - } - if (getTo_id() != null) { - _hashCode += getTo_id().hashCode(); - } - if (getAssociation() != null) { - _hashCode += getAssociation().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLCreateAssociation.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>createAssociation")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("association"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "association")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLDelete.java b/source/generated/org/alfresco/repo/webservice/types/CMLDelete.java deleted file mode 100644 index d994b32771..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLDelete.java +++ /dev/null @@ -1,119 +0,0 @@ -/** - * CMLDelete.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLDelete implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Predicate where; - - public CMLDelete() { - } - - public CMLDelete( - org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where value for this CMLDelete. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLDelete. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLDelete)) return false; - CMLDelete other = (CMLDelete) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLDelete.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>delete")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLMove.java b/source/generated/org/alfresco/repo/webservice/types/CMLMove.java deleted file mode 100644 index 73ee9bc4fe..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLMove.java +++ /dev/null @@ -1,305 +0,0 @@ -/** - * CMLMove.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLMove implements java.io.Serializable { - private org.alfresco.repo.webservice.types.ParentReference to; - - private java.lang.String to_id; - - private java.lang.String associationType; - - private java.lang.String childName; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLMove() { - } - - public CMLMove( - org.alfresco.repo.webservice.types.ParentReference to, - java.lang.String to_id, - java.lang.String associationType, - java.lang.String childName, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.to = to; - this.to_id = to_id; - this.associationType = associationType; - this.childName = childName; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the to value for this CMLMove. - * - * @return to - */ - public org.alfresco.repo.webservice.types.ParentReference getTo() { - return to; - } - - - /** - * Sets the to value for this CMLMove. - * - * @param to - */ - public void setTo(org.alfresco.repo.webservice.types.ParentReference to) { - this.to = to; - } - - - /** - * Gets the to_id value for this CMLMove. - * - * @return to_id - */ - public java.lang.String getTo_id() { - return to_id; - } - - - /** - * Sets the to_id value for this CMLMove. - * - * @param to_id - */ - public void setTo_id(java.lang.String to_id) { - this.to_id = to_id; - } - - - /** - * Gets the associationType value for this CMLMove. - * - * @return associationType - */ - public java.lang.String getAssociationType() { - return associationType; - } - - - /** - * Sets the associationType value for this CMLMove. - * - * @param associationType - */ - public void setAssociationType(java.lang.String associationType) { - this.associationType = associationType; - } - - - /** - * Gets the childName value for this CMLMove. - * - * @return childName - */ - public java.lang.String getChildName() { - return childName; - } - - - /** - * Sets the childName value for this CMLMove. - * - * @param childName - */ - public void setChildName(java.lang.String childName) { - this.childName = childName; - } - - - /** - * Gets the where value for this CMLMove. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLMove. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLMove. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLMove. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLMove)) return false; - CMLMove other = (CMLMove) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.to==null && other.getTo()==null) || - (this.to!=null && - this.to.equals(other.getTo()))) && - ((this.to_id==null && other.getTo_id()==null) || - (this.to_id!=null && - this.to_id.equals(other.getTo_id()))) && - ((this.associationType==null && other.getAssociationType()==null) || - (this.associationType!=null && - this.associationType.equals(other.getAssociationType()))) && - ((this.childName==null && other.getChildName()==null) || - (this.childName!=null && - this.childName.equals(other.getChildName()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getTo() != null) { - _hashCode += getTo().hashCode(); - } - if (getTo_id() != null) { - _hashCode += getTo_id().hashCode(); - } - if (getAssociationType() != null) { - _hashCode += getAssociationType().hashCode(); - } - if (getChildName() != null) { - _hashCode += getChildName().hashCode(); - } - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - if (getWhere_id() != null) { - _hashCode += getWhere_id().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLMove.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>move")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ParentReference")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("associationType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "associationType")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("childName"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "childName")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAspect.java b/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAspect.java deleted file mode 100644 index 79f09b7882..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAspect.java +++ /dev/null @@ -1,193 +0,0 @@ -/** - * CMLRemoveAspect.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLRemoveAspect implements java.io.Serializable { - private java.lang.String aspect; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLRemoveAspect() { - } - - public CMLRemoveAspect( - java.lang.String aspect, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.aspect = aspect; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the aspect value for this CMLRemoveAspect. - * - * @return aspect - */ - public java.lang.String getAspect() { - return aspect; - } - - - /** - * Sets the aspect value for this CMLRemoveAspect. - * - * @param aspect - */ - public void setAspect(java.lang.String aspect) { - this.aspect = aspect; - } - - - /** - * Gets the where value for this CMLRemoveAspect. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLRemoveAspect. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLRemoveAspect. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLRemoveAspect. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLRemoveAspect)) return false; - CMLRemoveAspect other = (CMLRemoveAspect) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.aspect==null && other.getAspect()==null) || - (this.aspect!=null && - this.aspect.equals(other.getAspect()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getAspect() != null) { - _hashCode += getAspect().hashCode(); - } - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - if (getWhere_id() != null) { - _hashCode += getWhere_id().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLRemoveAspect.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeAspect")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("aspect"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "aspect")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAssociation.java b/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAssociation.java deleted file mode 100644 index 047aadb7ad..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveAssociation.java +++ /dev/null @@ -1,267 +0,0 @@ -/** - * CMLRemoveAssociation.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLRemoveAssociation implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Predicate from; - - private java.lang.String from_id; - - private org.alfresco.repo.webservice.types.Predicate to; - - private java.lang.String to_id; - - private java.lang.String association; - - public CMLRemoveAssociation() { - } - - public CMLRemoveAssociation( - org.alfresco.repo.webservice.types.Predicate from, - java.lang.String from_id, - org.alfresco.repo.webservice.types.Predicate to, - java.lang.String to_id, - java.lang.String association) { - this.from = from; - this.from_id = from_id; - this.to = to; - this.to_id = to_id; - this.association = association; - } - - - /** - * Gets the from value for this CMLRemoveAssociation. - * - * @return from - */ - public org.alfresco.repo.webservice.types.Predicate getFrom() { - return from; - } - - - /** - * Sets the from value for this CMLRemoveAssociation. - * - * @param from - */ - public void setFrom(org.alfresco.repo.webservice.types.Predicate from) { - this.from = from; - } - - - /** - * Gets the from_id value for this CMLRemoveAssociation. - * - * @return from_id - */ - public java.lang.String getFrom_id() { - return from_id; - } - - - /** - * Sets the from_id value for this CMLRemoveAssociation. - * - * @param from_id - */ - public void setFrom_id(java.lang.String from_id) { - this.from_id = from_id; - } - - - /** - * Gets the to value for this CMLRemoveAssociation. - * - * @return to - */ - public org.alfresco.repo.webservice.types.Predicate getTo() { - return to; - } - - - /** - * Sets the to value for this CMLRemoveAssociation. - * - * @param to - */ - public void setTo(org.alfresco.repo.webservice.types.Predicate to) { - this.to = to; - } - - - /** - * Gets the to_id value for this CMLRemoveAssociation. - * - * @return to_id - */ - public java.lang.String getTo_id() { - return to_id; - } - - - /** - * Sets the to_id value for this CMLRemoveAssociation. - * - * @param to_id - */ - public void setTo_id(java.lang.String to_id) { - this.to_id = to_id; - } - - - /** - * Gets the association value for this CMLRemoveAssociation. - * - * @return association - */ - public java.lang.String getAssociation() { - return association; - } - - - /** - * Sets the association value for this CMLRemoveAssociation. - * - * @param association - */ - public void setAssociation(java.lang.String association) { - this.association = association; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLRemoveAssociation)) return false; - CMLRemoveAssociation other = (CMLRemoveAssociation) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.from==null && other.getFrom()==null) || - (this.from!=null && - this.from.equals(other.getFrom()))) && - ((this.from_id==null && other.getFrom_id()==null) || - (this.from_id!=null && - this.from_id.equals(other.getFrom_id()))) && - ((this.to==null && other.getTo()==null) || - (this.to!=null && - this.to.equals(other.getTo()))) && - ((this.to_id==null && other.getTo_id()==null) || - (this.to_id!=null && - this.to_id.equals(other.getTo_id()))) && - ((this.association==null && other.getAssociation()==null) || - (this.association!=null && - this.association.equals(other.getAssociation()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getFrom() != null) { - _hashCode += getFrom().hashCode(); - } - if (getFrom_id() != null) { - _hashCode += getFrom_id().hashCode(); - } - if (getTo() != null) { - _hashCode += getTo().hashCode(); - } - if (getTo_id() != null) { - _hashCode += getTo_id().hashCode(); - } - if (getAssociation() != null) { - _hashCode += getAssociation().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLRemoveAssociation.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeAssociation")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("to_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "to_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("association"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "association")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveChild.java b/source/generated/org/alfresco/repo/webservice/types/CMLRemoveChild.java deleted file mode 100644 index 14adfc9df3..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLRemoveChild.java +++ /dev/null @@ -1,231 +0,0 @@ -/** - * CMLRemoveChild.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLRemoveChild implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference from; - - private java.lang.String from_id; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLRemoveChild() { - } - - public CMLRemoveChild( - org.alfresco.repo.webservice.types.Reference from, - java.lang.String from_id, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.from = from; - this.from_id = from_id; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the from value for this CMLRemoveChild. - * - * @return from - */ - public org.alfresco.repo.webservice.types.Reference getFrom() { - return from; - } - - - /** - * Sets the from value for this CMLRemoveChild. - * - * @param from - */ - public void setFrom(org.alfresco.repo.webservice.types.Reference from) { - this.from = from; - } - - - /** - * Gets the from_id value for this CMLRemoveChild. - * - * @return from_id - */ - public java.lang.String getFrom_id() { - return from_id; - } - - - /** - * Sets the from_id value for this CMLRemoveChild. - * - * @param from_id - */ - public void setFrom_id(java.lang.String from_id) { - this.from_id = from_id; - } - - - /** - * Gets the where value for this CMLRemoveChild. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLRemoveChild. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLRemoveChild. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLRemoveChild. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLRemoveChild)) return false; - CMLRemoveChild other = (CMLRemoveChild) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.from==null && other.getFrom()==null) || - (this.from!=null && - this.from.equals(other.getFrom()))) && - ((this.from_id==null && other.getFrom_id()==null) || - (this.from_id!=null && - this.from_id.equals(other.getFrom_id()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getFrom() != null) { - _hashCode += getFrom().hashCode(); - } - if (getFrom_id() != null) { - _hashCode += getFrom_id().hashCode(); - } - if (getWhere() != null) { - _hashCode += getWhere().hashCode(); - } - if (getWhere_id() != null) { - _hashCode += getWhere_id().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(CMLRemoveChild.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", ">CML>removeChild")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Reference")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("from_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "from_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLUpdate.java b/source/generated/org/alfresco/repo/webservice/types/CMLUpdate.java deleted file mode 100644 index 58ca97b82a..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLUpdate.java +++ /dev/null @@ -1,210 +0,0 @@ -/** - * CMLUpdate.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLUpdate implements java.io.Serializable { - private org.alfresco.repo.webservice.types.NamedValue[] property; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLUpdate() { - } - - public CMLUpdate( - org.alfresco.repo.webservice.types.NamedValue[] property, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.property = property; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the property value for this CMLUpdate. - * - * @return property - */ - public org.alfresco.repo.webservice.types.NamedValue[] getProperty() { - return property; - } - - - /** - * Sets the property value for this CMLUpdate. - * - * @param property - */ - public void setProperty(org.alfresco.repo.webservice.types.NamedValue[] property) { - this.property = property; - } - - public org.alfresco.repo.webservice.types.NamedValue getProperty(int i) { - return this.property[i]; - } - - public void setProperty(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.property[i] = _value; - } - - - /** - * Gets the where value for this CMLUpdate. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLUpdate. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLUpdate. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLUpdate. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLUpdate)) return false; - CMLUpdate other = (CMLUpdate) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.property==null && other.getProperty()==null) || - (this.property!=null && - java.util.Arrays.equals(this.property, other.getProperty()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getProperty() != null) { - for (int i=0; - iCML>update")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("property"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "property")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "NamedValue")); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/CMLWriteContent.java b/source/generated/org/alfresco/repo/webservice/types/CMLWriteContent.java deleted file mode 100644 index aafb4a1d46..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/CMLWriteContent.java +++ /dev/null @@ -1,273 +0,0 @@ -/** - * CMLWriteContent.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class CMLWriteContent implements java.io.Serializable { - private java.lang.String property; - - private byte[] content; - - private org.alfresco.repo.webservice.types.ContentFormat format; - - private org.alfresco.repo.webservice.types.Predicate where; - - private java.lang.String where_id; - - public CMLWriteContent() { - } - - public CMLWriteContent( - java.lang.String property, - byte[] content, - org.alfresco.repo.webservice.types.ContentFormat format, - org.alfresco.repo.webservice.types.Predicate where, - java.lang.String where_id) { - this.property = property; - this.content = content; - this.format = format; - this.where = where; - this.where_id = where_id; - } - - - /** - * Gets the property value for this CMLWriteContent. - * - * @return property - */ - public java.lang.String getProperty() { - return property; - } - - - /** - * Sets the property value for this CMLWriteContent. - * - * @param property - */ - public void setProperty(java.lang.String property) { - this.property = property; - } - - - /** - * Gets the content value for this CMLWriteContent. - * - * @return content - */ - public byte[] getContent() { - return content; - } - - - /** - * Sets the content value for this CMLWriteContent. - * - * @param content - */ - public void setContent(byte[] content) { - this.content = content; - } - - - /** - * Gets the format value for this CMLWriteContent. - * - * @return format - */ - public org.alfresco.repo.webservice.types.ContentFormat getFormat() { - return format; - } - - - /** - * Sets the format value for this CMLWriteContent. - * - * @param format - */ - public void setFormat(org.alfresco.repo.webservice.types.ContentFormat format) { - this.format = format; - } - - - /** - * Gets the where value for this CMLWriteContent. - * - * @return where - */ - public org.alfresco.repo.webservice.types.Predicate getWhere() { - return where; - } - - - /** - * Sets the where value for this CMLWriteContent. - * - * @param where - */ - public void setWhere(org.alfresco.repo.webservice.types.Predicate where) { - this.where = where; - } - - - /** - * Gets the where_id value for this CMLWriteContent. - * - * @return where_id - */ - public java.lang.String getWhere_id() { - return where_id; - } - - - /** - * Sets the where_id value for this CMLWriteContent. - * - * @param where_id - */ - public void setWhere_id(java.lang.String where_id) { - this.where_id = where_id; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof CMLWriteContent)) return false; - CMLWriteContent other = (CMLWriteContent) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.property==null && other.getProperty()==null) || - (this.property!=null && - this.property.equals(other.getProperty()))) && - ((this.content==null && other.getContent()==null) || - (this.content!=null && - java.util.Arrays.equals(this.content, other.getContent()))) && - ((this.format==null && other.getFormat()==null) || - (this.format!=null && - this.format.equals(other.getFormat()))) && - ((this.where==null && other.getWhere()==null) || - (this.where!=null && - this.where.equals(other.getWhere()))) && - ((this.where_id==null && other.getWhere_id()==null) || - (this.where_id!=null && - this.where_id.equals(other.getWhere_id()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getProperty() != null) { - _hashCode += getProperty().hashCode(); - } - if (getContent() != null) { - for (int i=0; - iCML>writeContent")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("property"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "property")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("content"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "content")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "base64Binary")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("format"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "format")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ContentFormat")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Predicate")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("where_id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/cml/1.0", "where_id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/Cardinality.java b/source/generated/org/alfresco/repo/webservice/types/Cardinality.java deleted file mode 100644 index 5acd681f51..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/Cardinality.java +++ /dev/null @@ -1,74 +0,0 @@ -/** - * Cardinality.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class Cardinality implements java.io.Serializable { - private java.lang.String _value_; - private static java.util.HashMap _table_ = new java.util.HashMap(); - - // Constructor - protected Cardinality(java.lang.String value) { - _value_ = value; - _table_.put(_value_,this); - } - - public static final java.lang.String _value1 = "0..1"; - public static final java.lang.String _value2 = "1"; - public static final java.lang.String _value3 = "*"; - public static final java.lang.String _value4 = "1..*"; - public static final Cardinality value1 = new Cardinality(_value1); - public static final Cardinality value2 = new Cardinality(_value2); - public static final Cardinality value3 = new Cardinality(_value3); - public static final Cardinality value4 = new Cardinality(_value4); - public java.lang.String getValue() { return _value_;} - public static Cardinality fromValue(java.lang.String value) - throws java.lang.IllegalArgumentException { - Cardinality enumeration = (Cardinality) - _table_.get(value); - if (enumeration==null) throw new java.lang.IllegalArgumentException(); - return enumeration; - } - public static Cardinality fromString(java.lang.String value) - throws java.lang.IllegalArgumentException { - return fromValue(value); - } - public boolean equals(java.lang.Object obj) {return (obj == this);} - public int hashCode() { return toString().hashCode();} - public java.lang.String toString() { return _value_;} - public java.lang.Object readResolve() throws java.io.ObjectStreamException { return fromValue(_value_);} - 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.EnumSerializer( - _javaType, _xmlType); - } - 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.EnumDeserializer( - _javaType, _xmlType); - } - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(Cardinality.class); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Cardinality")); - } - /** - * Return type metadata object - */ - public static org.apache.axis.description.TypeDesc getTypeDesc() { - return typeDesc; - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/Category.java b/source/generated/org/alfresco/repo/webservice/types/Category.java deleted file mode 100644 index d1292d9a2d..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/Category.java +++ /dev/null @@ -1,193 +0,0 @@ -/** - * Category.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class Category implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference id; - - private java.lang.String title; - - private java.lang.String description; - - public Category() { - } - - public Category( - org.alfresco.repo.webservice.types.Reference id, - java.lang.String title, - java.lang.String description) { - this.id = id; - this.title = title; - this.description = description; - } - - - /** - * Gets the id value for this Category. - * - * @return id - */ - public org.alfresco.repo.webservice.types.Reference getId() { - return id; - } - - - /** - * Sets the id value for this Category. - * - * @param id - */ - public void setId(org.alfresco.repo.webservice.types.Reference id) { - this.id = id; - } - - - /** - * Gets the title value for this Category. - * - * @return title - */ - public java.lang.String getTitle() { - return title; - } - - - /** - * Sets the title value for this Category. - * - * @param title - */ - public void setTitle(java.lang.String title) { - this.title = title; - } - - - /** - * Gets the description value for this Category. - * - * @return description - */ - public java.lang.String getDescription() { - return description; - } - - - /** - * Sets the description value for this Category. - * - * @param description - */ - public void setDescription(java.lang.String description) { - this.description = description; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Category)) return false; - Category other = (Category) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.id==null && other.getId()==null) || - (this.id!=null && - this.id.equals(other.getId()))) && - ((this.title==null && other.getTitle()==null) || - (this.title!=null && - this.title.equals(other.getTitle()))) && - ((this.description==null && other.getDescription()==null) || - (this.description!=null && - this.description.equals(other.getDescription()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getId() != null) { - _hashCode += getId().hashCode(); - } - if (getTitle() != null) { - _hashCode += getTitle().hashCode(); - } - if (getDescription() != null) { - _hashCode += getDescription().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(Category.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Category")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Reference")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("title"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "title")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("description"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "description")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/ClassDefinition.java b/source/generated/org/alfresco/repo/webservice/types/ClassDefinition.java deleted file mode 100644 index f51ac8b752..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/ClassDefinition.java +++ /dev/null @@ -1,370 +0,0 @@ -/** - * ClassDefinition.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class ClassDefinition implements java.io.Serializable { - private java.lang.String name; - - private java.lang.String title; - - private java.lang.String description; - - private java.lang.String superClass; - - private boolean isAspect; - - private org.alfresco.repo.webservice.types.PropertyDefinition[] properties; - - private org.alfresco.repo.webservice.types.AssociationDefinition[] associations; - - public ClassDefinition() { - } - - public ClassDefinition( - java.lang.String name, - java.lang.String title, - java.lang.String description, - java.lang.String superClass, - boolean isAspect, - org.alfresco.repo.webservice.types.PropertyDefinition[] properties, - org.alfresco.repo.webservice.types.AssociationDefinition[] associations) { - this.name = name; - this.title = title; - this.description = description; - this.superClass = superClass; - this.isAspect = isAspect; - this.properties = properties; - this.associations = associations; - } - - - /** - * Gets the name value for this ClassDefinition. - * - * @return name - */ - public java.lang.String getName() { - return name; - } - - - /** - * Sets the name value for this ClassDefinition. - * - * @param name - */ - public void setName(java.lang.String name) { - this.name = name; - } - - - /** - * Gets the title value for this ClassDefinition. - * - * @return title - */ - public java.lang.String getTitle() { - return title; - } - - - /** - * Sets the title value for this ClassDefinition. - * - * @param title - */ - public void setTitle(java.lang.String title) { - this.title = title; - } - - - /** - * Gets the description value for this ClassDefinition. - * - * @return description - */ - public java.lang.String getDescription() { - return description; - } - - - /** - * Sets the description value for this ClassDefinition. - * - * @param description - */ - public void setDescription(java.lang.String description) { - this.description = description; - } - - - /** - * Gets the superClass value for this ClassDefinition. - * - * @return superClass - */ - public java.lang.String getSuperClass() { - return superClass; - } - - - /** - * Sets the superClass value for this ClassDefinition. - * - * @param superClass - */ - public void setSuperClass(java.lang.String superClass) { - this.superClass = superClass; - } - - - /** - * Gets the isAspect value for this ClassDefinition. - * - * @return isAspect - */ - public boolean isIsAspect() { - return isAspect; - } - - - /** - * Sets the isAspect value for this ClassDefinition. - * - * @param isAspect - */ - public void setIsAspect(boolean isAspect) { - this.isAspect = isAspect; - } - - - /** - * Gets the properties value for this ClassDefinition. - * - * @return properties - */ - public org.alfresco.repo.webservice.types.PropertyDefinition[] getProperties() { - return properties; - } - - - /** - * Sets the properties value for this ClassDefinition. - * - * @param properties - */ - public void setProperties(org.alfresco.repo.webservice.types.PropertyDefinition[] properties) { - this.properties = properties; - } - - public org.alfresco.repo.webservice.types.PropertyDefinition getProperties(int i) { - return this.properties[i]; - } - - public void setProperties(int i, org.alfresco.repo.webservice.types.PropertyDefinition _value) { - this.properties[i] = _value; - } - - - /** - * Gets the associations value for this ClassDefinition. - * - * @return associations - */ - public org.alfresco.repo.webservice.types.AssociationDefinition[] getAssociations() { - return associations; - } - - - /** - * Sets the associations value for this ClassDefinition. - * - * @param associations - */ - public void setAssociations(org.alfresco.repo.webservice.types.AssociationDefinition[] associations) { - this.associations = associations; - } - - public org.alfresco.repo.webservice.types.AssociationDefinition getAssociations(int i) { - return this.associations[i]; - } - - public void setAssociations(int i, org.alfresco.repo.webservice.types.AssociationDefinition _value) { - this.associations[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ClassDefinition)) return false; - ClassDefinition other = (ClassDefinition) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.name==null && other.getName()==null) || - (this.name!=null && - this.name.equals(other.getName()))) && - ((this.title==null && other.getTitle()==null) || - (this.title!=null && - this.title.equals(other.getTitle()))) && - ((this.description==null && other.getDescription()==null) || - (this.description!=null && - this.description.equals(other.getDescription()))) && - ((this.superClass==null && other.getSuperClass()==null) || - (this.superClass!=null && - this.superClass.equals(other.getSuperClass()))) && - this.isAspect == other.isIsAspect() && - ((this.properties==null && other.getProperties()==null) || - (this.properties!=null && - java.util.Arrays.equals(this.properties, other.getProperties()))) && - ((this.associations==null && other.getAssociations()==null) || - (this.associations!=null && - java.util.Arrays.equals(this.associations, other.getAssociations()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getName() != null) { - _hashCode += getName().hashCode(); - } - if (getTitle() != null) { - _hashCode += getTitle().hashCode(); - } - if (getDescription() != null) { - _hashCode += getDescription().hashCode(); - } - if (getSuperClass() != null) { - _hashCode += getSuperClass().hashCode(); - } - _hashCode += (isIsAspect() ? Boolean.TRUE : Boolean.FALSE).hashCode(); - if (getProperties() != null) { - for (int i=0; - iResultSetRow>node")); - elemField.setMinOccurs(0); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/ResultSetRowNode.java b/source/generated/org/alfresco/repo/webservice/types/ResultSetRowNode.java deleted file mode 100644 index bdcdeac957..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/ResultSetRowNode.java +++ /dev/null @@ -1,209 +0,0 @@ -/** - * ResultSetRowNode.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class ResultSetRowNode implements java.io.Serializable { - private java.lang.String id; - - private java.lang.String type; - - private java.lang.String[] aspects; - - public ResultSetRowNode() { - } - - public ResultSetRowNode( - java.lang.String id, - java.lang.String type, - java.lang.String[] aspects) { - this.id = id; - this.type = type; - this.aspects = aspects; - } - - - /** - * Gets the id value for this ResultSetRowNode. - * - * @return id - */ - public java.lang.String getId() { - return id; - } - - - /** - * Sets the id value for this ResultSetRowNode. - * - * @param id - */ - public void setId(java.lang.String id) { - this.id = id; - } - - - /** - * Gets the type value for this ResultSetRowNode. - * - * @return type - */ - public java.lang.String getType() { - return type; - } - - - /** - * Sets the type value for this ResultSetRowNode. - * - * @param type - */ - public void setType(java.lang.String type) { - this.type = type; - } - - - /** - * Gets the aspects value for this ResultSetRowNode. - * - * @return aspects - */ - public java.lang.String[] getAspects() { - return aspects; - } - - - /** - * Sets the aspects value for this ResultSetRowNode. - * - * @param aspects - */ - public void setAspects(java.lang.String[] aspects) { - this.aspects = aspects; - } - - public java.lang.String getAspects(int i) { - return this.aspects[i]; - } - - public void setAspects(int i, java.lang.String _value) { - this.aspects[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ResultSetRowNode)) return false; - ResultSetRowNode other = (ResultSetRowNode) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.id==null && other.getId()==null) || - (this.id!=null && - this.id.equals(other.getId()))) && - ((this.type==null && other.getType()==null) || - (this.type!=null && - this.type.equals(other.getType()))) && - ((this.aspects==null && other.getAspects()==null) || - (this.aspects!=null && - java.util.Arrays.equals(this.aspects, other.getAspects()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getId() != null) { - _hashCode += getId().hashCode(); - } - if (getType() != null) { - _hashCode += getType().hashCode(); - } - if (getAspects() != null) { - for (int i=0; - iResultSetRow>node")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("id"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "id")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("type"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "type")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("aspects"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "aspects")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Name")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - elemField.setMaxOccursUnbounded(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/RoleDefinition.java b/source/generated/org/alfresco/repo/webservice/types/RoleDefinition.java deleted file mode 100644 index fc36f99c89..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/RoleDefinition.java +++ /dev/null @@ -1,157 +0,0 @@ -/** - * RoleDefinition.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class RoleDefinition implements java.io.Serializable { - private java.lang.String name; - - private org.alfresco.repo.webservice.types.Cardinality cardinality; - - public RoleDefinition() { - } - - public RoleDefinition( - java.lang.String name, - org.alfresco.repo.webservice.types.Cardinality cardinality) { - this.name = name; - this.cardinality = cardinality; - } - - - /** - * Gets the name value for this RoleDefinition. - * - * @return name - */ - public java.lang.String getName() { - return name; - } - - - /** - * Sets the name value for this RoleDefinition. - * - * @param name - */ - public void setName(java.lang.String name) { - this.name = name; - } - - - /** - * Gets the cardinality value for this RoleDefinition. - * - * @return cardinality - */ - public org.alfresco.repo.webservice.types.Cardinality getCardinality() { - return cardinality; - } - - - /** - * Sets the cardinality value for this RoleDefinition. - * - * @param cardinality - */ - public void setCardinality(org.alfresco.repo.webservice.types.Cardinality cardinality) { - this.cardinality = cardinality; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof RoleDefinition)) return false; - RoleDefinition other = (RoleDefinition) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.name==null && other.getName()==null) || - (this.name!=null && - this.name.equals(other.getName()))) && - ((this.cardinality==null && other.getCardinality()==null) || - (this.cardinality!=null && - this.cardinality.equals(other.getCardinality()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getName() != null) { - _hashCode += getName().hashCode(); - } - if (getCardinality() != null) { - _hashCode += getCardinality().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(RoleDefinition.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "RoleDefinition")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("name"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "name")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("cardinality"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "cardinality")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Cardinality")); - elemField.setMinOccurs(0); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/Store.java b/source/generated/org/alfresco/repo/webservice/types/Store.java deleted file mode 100644 index 1bfb3df1f6..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/Store.java +++ /dev/null @@ -1,157 +0,0 @@ -/** - * Store.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class Store implements java.io.Serializable { - private java.lang.String scheme; - - private java.lang.String address; - - public Store() { - } - - public Store( - java.lang.String scheme, - java.lang.String address) { - this.scheme = scheme; - this.address = address; - } - - - /** - * Gets the scheme value for this Store. - * - * @return scheme - */ - public java.lang.String getScheme() { - return scheme; - } - - - /** - * Sets the scheme value for this Store. - * - * @param scheme - */ - public void setScheme(java.lang.String scheme) { - this.scheme = scheme; - } - - - /** - * Gets the address value for this Store. - * - * @return address - */ - public java.lang.String getAddress() { - return address; - } - - - /** - * Sets the address value for this Store. - * - * @param address - */ - public void setAddress(java.lang.String address) { - this.address = address; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Store)) return false; - Store other = (Store) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.scheme==null && other.getScheme()==null) || - (this.scheme!=null && - this.scheme.equals(other.getScheme()))) && - ((this.address==null && other.getAddress()==null) || - (this.address!=null && - this.address.equals(other.getAddress()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getScheme() != null) { - _hashCode += getScheme().hashCode(); - } - if (getAddress() != null) { - _hashCode += getAddress().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(Store.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "Store")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("scheme"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "scheme")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("address"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "address")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(true); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/ValueDefinition.java b/source/generated/org/alfresco/repo/webservice/types/ValueDefinition.java deleted file mode 100644 index 7c0ef7f814..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/ValueDefinition.java +++ /dev/null @@ -1,229 +0,0 @@ -/** - * ValueDefinition.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class ValueDefinition implements java.io.Serializable { - private java.lang.String name; - - private java.lang.String title; - - private java.lang.String description; - - private java.lang.String dataType; - - public ValueDefinition() { - } - - public ValueDefinition( - java.lang.String name, - java.lang.String title, - java.lang.String description, - java.lang.String dataType) { - this.name = name; - this.title = title; - this.description = description; - this.dataType = dataType; - } - - - /** - * Gets the name value for this ValueDefinition. - * - * @return name - */ - public java.lang.String getName() { - return name; - } - - - /** - * Sets the name value for this ValueDefinition. - * - * @param name - */ - public void setName(java.lang.String name) { - this.name = name; - } - - - /** - * Gets the title value for this ValueDefinition. - * - * @return title - */ - public java.lang.String getTitle() { - return title; - } - - - /** - * Sets the title value for this ValueDefinition. - * - * @param title - */ - public void setTitle(java.lang.String title) { - this.title = title; - } - - - /** - * Gets the description value for this ValueDefinition. - * - * @return description - */ - public java.lang.String getDescription() { - return description; - } - - - /** - * Sets the description value for this ValueDefinition. - * - * @param description - */ - public void setDescription(java.lang.String description) { - this.description = description; - } - - - /** - * Gets the dataType value for this ValueDefinition. - * - * @return dataType - */ - public java.lang.String getDataType() { - return dataType; - } - - - /** - * Sets the dataType value for this ValueDefinition. - * - * @param dataType - */ - public void setDataType(java.lang.String dataType) { - this.dataType = dataType; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof ValueDefinition)) return false; - ValueDefinition other = (ValueDefinition) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.name==null && other.getName()==null) || - (this.name!=null && - this.name.equals(other.getName()))) && - ((this.title==null && other.getTitle()==null) || - (this.title!=null && - this.title.equals(other.getTitle()))) && - ((this.description==null && other.getDescription()==null) || - (this.description!=null && - this.description.equals(other.getDescription()))) && - ((this.dataType==null && other.getDataType()==null) || - (this.dataType!=null && - this.dataType.equals(other.getDataType()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getName() != null) { - _hashCode += getName().hashCode(); - } - if (getTitle() != null) { - _hashCode += getTitle().hashCode(); - } - if (getDescription() != null) { - _hashCode += getDescription().hashCode(); - } - if (getDataType() != null) { - _hashCode += getDataType().hashCode(); - } - __hashCodeCalc = false; - return _hashCode; - } - - // Type metadata - private static org.apache.axis.description.TypeDesc typeDesc = - new org.apache.axis.description.TypeDesc(ValueDefinition.class, true); - - static { - typeDesc.setXmlType(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "ValueDefinition")); - org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("name"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "name")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("title"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "title")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("description"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "description")); - elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); - elemField.setMinOccurs(0); - elemField.setNillable(false); - typeDesc.addFieldDesc(elemField); - elemField = new org.apache.axis.description.ElementDesc(); - elemField.setFieldName("dataType"); - elemField.setXmlName(new javax.xml.namespace.QName("http://www.alfresco.org/ws/model/content/1.0", "dataType")); - 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); - } - -} diff --git a/source/generated/org/alfresco/repo/webservice/types/Version.java b/source/generated/org/alfresco/repo/webservice/types/Version.java deleted file mode 100644 index 1b1c96cdba..0000000000 --- a/source/generated/org/alfresco/repo/webservice/types/Version.java +++ /dev/null @@ -1,316 +0,0 @@ -/** - * Version.java - * - * This file was auto-generated from WSDL - * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. - */ - -package org.alfresco.repo.webservice.types; - -public class Version implements java.io.Serializable { - private org.alfresco.repo.webservice.types.Reference id; - - private java.util.Calendar created; - - private java.lang.String creator; - - private java.lang.String label; - - private boolean major; - - private org.alfresco.repo.webservice.types.NamedValue[] commentaries; - - public Version() { - } - - public Version( - org.alfresco.repo.webservice.types.Reference id, - java.util.Calendar created, - java.lang.String creator, - java.lang.String label, - boolean major, - org.alfresco.repo.webservice.types.NamedValue[] commentaries) { - this.id = id; - this.created = created; - this.creator = creator; - this.label = label; - this.major = major; - this.commentaries = commentaries; - } - - - /** - * Gets the id value for this Version. - * - * @return id - */ - public org.alfresco.repo.webservice.types.Reference getId() { - return id; - } - - - /** - * Sets the id value for this Version. - * - * @param id - */ - public void setId(org.alfresco.repo.webservice.types.Reference id) { - this.id = id; - } - - - /** - * Gets the created value for this Version. - * - * @return created - */ - public java.util.Calendar getCreated() { - return created; - } - - - /** - * Sets the created value for this Version. - * - * @param created - */ - public void setCreated(java.util.Calendar created) { - this.created = created; - } - - - /** - * Gets the creator value for this Version. - * - * @return creator - */ - public java.lang.String getCreator() { - return creator; - } - - - /** - * Sets the creator value for this Version. - * - * @param creator - */ - public void setCreator(java.lang.String creator) { - this.creator = creator; - } - - - /** - * Gets the label value for this Version. - * - * @return label - */ - public java.lang.String getLabel() { - return label; - } - - - /** - * Sets the label value for this Version. - * - * @param label - */ - public void setLabel(java.lang.String label) { - this.label = label; - } - - - /** - * Gets the major value for this Version. - * - * @return major - */ - public boolean isMajor() { - return major; - } - - - /** - * Sets the major value for this Version. - * - * @param major - */ - public void setMajor(boolean major) { - this.major = major; - } - - - /** - * Gets the commentaries value for this Version. - * - * @return commentaries - */ - public org.alfresco.repo.webservice.types.NamedValue[] getCommentaries() { - return commentaries; - } - - - /** - * Sets the commentaries value for this Version. - * - * @param commentaries - */ - public void setCommentaries(org.alfresco.repo.webservice.types.NamedValue[] commentaries) { - this.commentaries = commentaries; - } - - public org.alfresco.repo.webservice.types.NamedValue getCommentaries(int i) { - return this.commentaries[i]; - } - - public void setCommentaries(int i, org.alfresco.repo.webservice.types.NamedValue _value) { - this.commentaries[i] = _value; - } - - private java.lang.Object __equalsCalc = null; - public synchronized boolean equals(java.lang.Object obj) { - if (!(obj instanceof Version)) return false; - Version other = (Version) obj; - if (obj == null) return false; - if (this == obj) return true; - if (__equalsCalc != null) { - return (__equalsCalc == obj); - } - __equalsCalc = obj; - boolean _equals; - _equals = true && - ((this.id==null && other.getId()==null) || - (this.id!=null && - this.id.equals(other.getId()))) && - ((this.created==null && other.getCreated()==null) || - (this.created!=null && - this.created.equals(other.getCreated()))) && - ((this.creator==null && other.getCreator()==null) || - (this.creator!=null && - this.creator.equals(other.getCreator()))) && - ((this.label==null && other.getLabel()==null) || - (this.label!=null && - this.label.equals(other.getLabel()))) && - this.major == other.isMajor() && - ((this.commentaries==null && other.getCommentaries()==null) || - (this.commentaries!=null && - java.util.Arrays.equals(this.commentaries, other.getCommentaries()))); - __equalsCalc = null; - return _equals; - } - - private boolean __hashCodeCalc = false; - public synchronized int hashCode() { - if (__hashCodeCalc) { - return 0; - } - __hashCodeCalc = true; - int _hashCode = 1; - if (getId() != null) { - _hashCode += getId().hashCode(); - } - if (getCreated() != null) { - _hashCode += getCreated().hashCode(); - } - if (getCreator() != null) { - _hashCode += getCreator().hashCode(); - } - if (getLabel() != null) { - _hashCode += getLabel().hashCode(); - } - _hashCode += (isMajor() ? Boolean.TRUE : Boolean.FALSE).hashCode(); - if (getCommentaries() != null) { - for (int i=0; - i. - */ -package org.alfresco.repo.webservice; - -import java.util.Set; - -import org.alfresco.repo.webservice.types.ResultSetRowNode; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.namespace.QName; - -/** - * Abstract implementation of a QuerySession providing support for automatic id generation - * and provides support for paging through query results. - *

- * Before executing, all the services need to be set. - * - * @author gavinc - */ -public abstract class AbstractQuery implements ServerQuery -{ - public AbstractQuery() - { - } - - /** - * Override this method only if the query can limit the results without a post-query cut-off. - * - * {@inheritDoc} - */ - public RESULTSET execute(ServiceRegistry serviceRegistry, long maxResults) - { - return execute(serviceRegistry); - } - - /** - * Create a result set row node object for the provided node reference - * - * @param nodeRef - * the node reference - * @param nodeService - * the node service - * @return - * the result set row node - */ - protected ResultSetRowNode createResultSetRowNode(NodeRef nodeRef, NodeService nodeService) - { - // Get the type - String type = nodeService.getType(nodeRef).toString(); - - // Get the aspects applied to the node - Set aspects = nodeService.getAspects(nodeRef); - String[] aspectNames = new String[aspects.size()]; - int index = 0; - for (QName aspect : aspects) - { - aspectNames[index] = aspect.toString(); - index++; - } - - // Create and return the result set row node - return new ResultSetRowNode(nodeRef.getId(), type, aspectNames); - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/AbstractQuerySession.java b/source/java/org/alfresco/repo/webservice/AbstractQuerySession.java deleted file mode 100644 index 0cd77191a2..0000000000 --- a/source/java/org/alfresco/repo/webservice/AbstractQuerySession.java +++ /dev/null @@ -1,182 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import org.alfresco.service.ServiceRegistry; -import org.alfresco.util.GUID; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * An abstract implementation of the query session that keeps track of the paging data. - * It provides support for paging of results of Serializable[] instances. - * - * @author Derek Hulley - * @since 2.1 - */ -public abstract class AbstractQuerySession implements QuerySession -{ - private static Log logger = LogFactory.getLog(AbstractQuerySession.class); - - private String id; - private long maxResults; - private long batchSize; - private ServerQuery query; - /** a transient cache of the query results */ - private transient RESULTSET cachedResults; - - /** - * A pointer to the first row to be returned. When the last result is returned, the - * position will be out of range of the current results by 1. - */ - private long position; - /** - * Keep track of whether the position has previously passed the end of a set of results. - */ - private boolean expectMoreResults; - - /** - * Common constructor that initialises the session's id and batch size - * - * @param maxResults - * the maximum number of results to retrieve for the query. This is not the page - * size, which is normally significantly smaller. - * @param batchSize - * the batch size this session will use - * @param query - * the query that generates the results - */ - public AbstractQuerySession(long maxResults, long batchSize, ServerQuery query) - { - this.id = GUID.generate(); - this.batchSize = batchSize; - this.maxResults = maxResults; - this.query = query; - this.position = 0; - this.expectMoreResults = true; - } - - /** - * {@inheritDoc} - */ - public String getId() - { - return this.id; - } - - /** - * {@inheritDoc} - */ - public ServerQuery getQuery() - { - return query; - } - - /** - * Helper method to get the results. This may be a cached value or may be - * freshly retrieved from the query object. - * - * @param serviceRegistry the - * @return the query results, new or cached - */ - protected RESULTSET getQueryResults(ServiceRegistry serviceRegistry) - { - if (cachedResults != null) - { - return cachedResults; - } - // Get the results and cache them - cachedResults = query.execute(serviceRegistry, maxResults); - // Done - return cachedResults; - } - - /** - * {@inheritDoc} - */ - public boolean haveMoreResults() - { - return expectMoreResults; - } - - protected abstract RESULTSETROW[] makeArray(int size); - - /** - * Helper method to page through the results. The task of retrieving, unwrapping and - * rewrapping the array of results (rows) is left up to the derived implementations. - */ - protected final RESULTSETROW[] getNextResults(RESULTSETROW[] allResults) - { - /* - * This class can't manipulate the query to get the results because each - * query implementation's results (the array of rows) is contained within - * a different type of object. This method helps - */ - - long allResultsSize = allResults.length; - - RESULTSETROW[] batchedResults = null; - if (position >= allResultsSize) - { - // We are already past the last result - batchedResults = makeArray(0); - // Position is after last - position = allResultsSize; - } - else if (position == 0 && batchSize >= allResultsSize) - { - // We can give back the original results - batchedResults = allResults; - // Position is after last - position = allResultsSize; - } - else if ((position + batchSize) >= allResultsSize) - { - // There isn't an excess of rows remaining, so copy to the last one - long rowCopyCount = allResultsSize - position; //ETWOONE-396 second part - batchedResults = makeArray((int)rowCopyCount); - System.arraycopy(allResults, (int)position, batchedResults, 0, (int)rowCopyCount); - // Position is after last - position = allResultsSize; - } - else - { - // There are an excess of rows remaining - batchedResults = makeArray((int)batchSize); - System.arraycopy(allResults, (int)position, batchedResults, 0, (int)batchSize); - // Position increases by the batch size - position += batchSize; - } - // Keep track of whether we expect more results - if (position >= allResultsSize) - { - expectMoreResults = false; - } - // Done - if (logger.isDebugEnabled()) - { - logger.debug("\n" + - "Fetched next set of results: \n" + - " Total results count: " + allResultsSize + "\n" + - " Batch size: " + batchedResults.length + "\n" + - " New Position: " + position); - } - return batchedResults; - } -} diff --git a/source/java/org/alfresco/repo/webservice/AbstractWebService.java b/source/java/org/alfresco/repo/webservice/AbstractWebService.java deleted file mode 100644 index 308bd226d9..0000000000 --- a/source/java/org/alfresco/repo/webservice/AbstractWebService.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import org.alfresco.repo.cache.SimpleCache; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.ContentService; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; - -/** - * Abstract base class for all web service implementations, provides support for common service injection - * - * @author gavinc - */ -public abstract class AbstractWebService -{ - protected ServiceRegistry serviceRegistry; - protected DictionaryService dictionaryService; - protected NodeService nodeService; - protected ContentService contentService; - protected SearchService searchService; - protected NamespaceService namespaceService; - - protected SimpleCache querySessionCache; - - public void setServiceRegistry(ServiceRegistry serviceRegistry) - { - this.serviceRegistry = serviceRegistry; - } - - /** - * 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 NodeService to be used - * - * @param nodeService The NodeService - */ - public void setNodeService(NodeService nodeService) - { - this.nodeService = nodeService; - } - - /** - * Sets the ContentService instance to use - * - * @param contentSvc The ContentService - */ - public void setContentService(ContentService contentSvc) - { - this.contentService = contentSvc; - } - - /** - * Sets the instance of the SearchService to be used - * - * @param searchService The SearchService - */ - public void setSearchService(SearchService searchService) - { - this.searchService = searchService; - } - - /** - * Sets the instance of the NamespaceService to be used - * - * @param namespaceService The NamespaceService - */ - public void setNamespaceService(NamespaceService namespaceService) - { - this.namespaceService = namespaceService; - } - - /** - * Sets the cache to use for storing the the query session's paging information by query session ID. - * - * @param querySessionCache the cache. Cluster replication should be via serialization of - * the cache values. - */ - public void setQuerySessionCache(SimpleCache querySessionCache) - { - this.querySessionCache = querySessionCache; - } -} diff --git a/source/java/org/alfresco/repo/webservice/CMLUtil.java b/source/java/org/alfresco/repo/webservice/CMLUtil.java deleted file mode 100644 index e3f542c0d3..0000000000 --- a/source/java/org/alfresco/repo/webservice/CMLUtil.java +++ /dev/null @@ -1,714 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.io.Serializable; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.alfresco.error.AlfrescoRuntimeException; -import org.alfresco.repo.webservice.repository.UpdateResult; -import org.alfresco.repo.webservice.types.CML; -import org.alfresco.repo.webservice.types.CMLAddAspect; -import org.alfresco.repo.webservice.types.CMLAddChild; -import org.alfresco.repo.webservice.types.CMLCopy; -import org.alfresco.repo.webservice.types.CMLCreate; -import org.alfresco.repo.webservice.types.CMLCreateAssociation; -import org.alfresco.repo.webservice.types.CMLDelete; -import org.alfresco.repo.webservice.types.CMLMove; -import org.alfresco.repo.webservice.types.CMLRemoveAspect; -import org.alfresco.repo.webservice.types.CMLRemoveAssociation; -import org.alfresco.repo.webservice.types.CMLRemoveChild; -import org.alfresco.repo.webservice.types.CMLUpdate; -import org.alfresco.repo.webservice.types.CMLWriteContent; -import org.alfresco.repo.webservice.types.ContentFormat; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.ParentReference; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.ContentService; -import org.alfresco.service.cmr.repository.ContentWriter; -import org.alfresco.service.cmr.repository.CopyService; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; -import org.alfresco.util.PropertyMap; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * @author Roy Wetherall - */ -public class CMLUtil -{ - private static Log logger = LogFactory.getLog(CMLUtil.class); - - private static final String CREATE = "create"; - private static final String ADD_ASPECT = "addAspect"; - private static final String REMOVE_ASPECT = "removeAspect"; - private static final String UPDATE = "update"; - private static final String DELETE = "delete"; - private static final String MOVE = "move"; - private static final String COPY = "copy"; - private static final String ADD_CHILD = "addChild"; - private static final String REMOVE_CHILD = "removeChild"; - private static final String CREATE_ASSOCIATION = "createAssociation"; - private static final String REMOVE_ASSOCIATION = "removeAssociation"; - private static final String WRITE_CONTENT = "writeContent"; - - private NodeService nodeService; - private SearchService searchService; - private NamespaceService namespaceService; - private CopyService copyService; - private DictionaryService dictionaryService; - private ContentService contentService; - - public void setNodeService(NodeService nodeService) - { - this.nodeService = nodeService; - } - - public void setSearchService(SearchService searchService) - { - this.searchService = searchService; - } - - public void setNamespaceService(NamespaceService namespaceService) - { - this.namespaceService = namespaceService; - } - - public void setCopyService(CopyService copyService) - { - this.copyService = copyService; - } - - public void setDictionaryService(DictionaryService dictionaryService) - { - this.dictionaryService = dictionaryService; - } - - public void setContentService(ContentService contentService) - { - this.contentService = contentService; - } - - /** - * Execute a cml update query. - * - * @param cml the cml objects - * @return the update result - */ - public UpdateResult[] executeCML(CML cml) - { - ExecutionContext context = new ExecutionContext(); - List results = new ArrayList(); - - // Execute creates - CMLCreate[] creates = cml.getCreate(); - if (creates != null) - { - for (CMLCreate create : creates) - { - executeCMLCreate(create, context, results); - } - } - - // Exceute add aspect - CMLAddAspect[] addAspects = cml.getAddAspect(); - if (addAspects != null) - { - for (CMLAddAspect addAspect : addAspects) - { - executeCMLAddAspect(addAspect, context, results); - } - } - - // Execeute remove aspect - CMLRemoveAspect[] removeAspects = cml.getRemoveAspect(); - if (removeAspects != null) - { - for (CMLRemoveAspect removeAspect : removeAspects) - { - executeCMLRemoveAspect(removeAspect, context, results); - } - } - - // Execute update - CMLUpdate[] updates = cml.getUpdate(); - if (updates != null) - { - for (CMLUpdate update : updates) - { - executeCMLUpdate(update, context, results); - } - } - - CMLWriteContent[] writes = cml.getWriteContent(); - if (writes != null) - { - if (logger.isDebugEnabled() == true) - { - logger.debug(writes.length + " write content statements ready for execution."); - } - - for (CMLWriteContent write : writes) - { - executeCMLWriteContent(write, context, results); - } - } - - // Execute delete - CMLDelete[] deletes = cml.getDelete(); - if (deletes != null) - { - for (CMLDelete delete : deletes) - { - executeCMLDelete(delete, context, results); - } - } - - // Execute move - CMLMove[] moves = cml.getMove(); - if (moves != null) - { - for (CMLMove move : moves) - { - executeCMLMove(move, context, results); - } - } - - // Execute copy - CMLCopy[] copies = cml.getCopy(); - if (copies != null) - { - for (CMLCopy copy : copies) - { - executeCMLCopy(copy, context, results); - } - } - - // Execute addChild - CMLAddChild[] addChildren = cml.getAddChild(); - if (addChildren != null) - { - for (CMLAddChild addChild : addChildren) - { - executeCMLAddChild(addChild, context, results); - } - } - - // Execute removeChild - CMLRemoveChild[] removeChildren = cml.getRemoveChild(); - if (removeChildren != null) - { - for (CMLRemoveChild removeChild : removeChildren) - { - executeCMLRemoveChild(removeChild, context, results); - } - } - - // Execute createAssociation - CMLCreateAssociation[] createAssocs = cml.getCreateAssociation(); - if (createAssocs != null) - { - for (CMLCreateAssociation createAssoc : createAssocs) - { - executeCMLCreateAssociation(createAssoc, context, results); - } - } - - // Execute removeAssociation - CMLRemoveAssociation[] removeAssocs = cml.getRemoveAssociation(); - if (removeAssocs != null) - { - for (CMLRemoveAssociation removeAssoc : removeAssocs) - { - executeCMLRemoveAssociation(removeAssoc, context, results); - } - } - - return results.toArray(new UpdateResult[results.size()]); - } - - /** - * - * @param create - * @param result - */ - private void executeCMLCreate(CMLCreate create, ExecutionContext context, List results) - { - NodeRef parentNodeRef = null; - QName assocTypeQName = null; - QName assocQName = null; - - // Get the detail of the parent - ParentReference parentReference = create.getParent(); - if (parentReference != null) - { - parentNodeRef = Utils.convertToNodeRef( - parentReference, - this.nodeService, - this.searchService, - this.namespaceService); - assocTypeQName = QName.createQName(parentReference.getAssociationType()); - assocQName = QName.createQName(parentReference.getChildName()); - } - else - { - String parentId = create.getParent_id(); - if (parentId != null) - { - parentNodeRef = context.idMap.get(parentId); - } - assocTypeQName = QName.createQName(create.getAssociationType()); - assocQName = QName.createQName(create.getChildName()); - } - - if (parentNodeRef == null) - { - throw new AlfrescoRuntimeException("No parent details have been specified for the node being created."); - } - - // Get the type of the node to create - QName nodeTypeQName = QName.createQName(create.getType()); - - // Get the properties - PropertyMap properties = getPropertyMap(create.getProperty()); - - // Create the new node - NodeRef nodeRef = this.nodeService.createNode(parentNodeRef, assocTypeQName, assocQName, nodeTypeQName, properties).getChildRef(); - - // Store the node ref in the execution context (if appropraite) - String id = create.getId(); - if (id != null && id.length() != 0) - { - context.addId(id, nodeRef); - } - - results.add(createResult(CREATE, id, null, nodeRef)); - } - - /** - * Get a property map from the named value array that can be used when setting properties - * - * @param namedValues a array of named value properties - * @return a property map of vlaues - */ - private PropertyMap getPropertyMap(NamedValue[] namedValues) - { - PropertyMap properties = new PropertyMap(); - if (namedValues != null) - { - for (NamedValue value : namedValues) - { - QName qname = QName.createQName(value.getName()); - Serializable propValue = Utils.getValueFromNamedValue(this.dictionaryService, qname, value); - properties.put(qname, propValue); - } - } - return properties; - } - - private UpdateResult createResult(String cmd, String sourceId, NodeRef sourceNodeRef, NodeRef destinationNodeRef) - { - UpdateResult result = new UpdateResult(); - result.setStatement(cmd); - if (sourceId != null) - { - result.setSourceId(sourceId); - } - if (sourceNodeRef != null) - { - result.setSource(Utils.convertToReference(this.nodeService, this.namespaceService, sourceNodeRef)); - } - if (destinationNodeRef != null) - { - result.setDestination(Utils.convertToReference(this.nodeService, this.namespaceService, destinationNodeRef)); - } - // Sort out the count ??? - return result; - } - - /** - * - * @param addAspect - * @param result - */ - private void executeCMLAddAspect(CMLAddAspect addAspect, ExecutionContext context, List results) - { - // Get the node refs - List nodeRefs = getNodeRefList(addAspect.getWhere_id(), addAspect.getWhere(), context); - - // Get the aspect name and the properties - QName aspectQName = QName.createQName(addAspect.getAspect()); - PropertyMap properties = getPropertyMap(addAspect.getProperty()); - - for (NodeRef nodeRef : nodeRefs) - { - // Add the aspect - this.nodeService.addAspect(nodeRef, aspectQName, properties); - - // Create the result - results.add(createResult(ADD_ASPECT, null, nodeRef, nodeRef)); - } - } - - private void executeCMLRemoveAspect(CMLRemoveAspect removeAspect, ExecutionContext context, List results) - { - // Get the node refs - List nodeRefs = getNodeRefList(removeAspect.getWhere_id(), removeAspect.getWhere(), context); - - // Get the aspect name - QName aspectQName = QName.createQName(removeAspect.getAspect()); - - for (NodeRef nodeRef : nodeRefs) - { - // Add the aspect - this.nodeService.removeAspect(nodeRef, aspectQName); - - // Create the result - results.add(createResult(REMOVE_ASPECT, null, nodeRef, nodeRef)); - } - } - - private List getNodeRefList(String id, Predicate predicate, ExecutionContext context) - { - boolean bResolved = false; - List nodeRefs = new ArrayList(); - if (id != null && id.length() != 0) - { - NodeRef localNodeRef = context.getNodeRef(id); - if (localNodeRef != null) - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Local node ref has been resolved for id = " + id); - } - - nodeRefs.add(localNodeRef); - bResolved = true; - } - } - - if (bResolved == false) - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Trying to resolve predicate for where statement"); - if (predicate.getNodes() == null) - { - logger.debug("!! Predicate has no nodes !!"); - } - } - nodeRefs = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - } - return nodeRefs; - } - - private void executeCMLUpdate(CMLUpdate update, ExecutionContext context, List results) - { - // Get the nodes and properties - List nodeRefs = getNodeRefList(update.getWhere_id(), update.getWhere(), context); - PropertyMap props = getPropertyMap(update.getProperty()); - - for (NodeRef nodeRef : nodeRefs) - { - // Update the property values - Map currentProps = this.nodeService.getProperties(nodeRef); - currentProps.putAll(props); - this.nodeService.setProperties(nodeRef, currentProps); - - // Get the result - results.add(createResult(UPDATE, null, nodeRef, nodeRef)); - } - } - - private void executeCMLWriteContent(CMLWriteContent write, ExecutionContext context, List results) - { - // Get the nodes and content property - List nodeRefs = getNodeRefList(write.getWhere_id(), write.getWhere(), context); - QName property = QName.createQName(write.getProperty()); - ContentFormat format = write.getFormat(); - byte[] content = write.getContent(); - - if (logger.isDebugEnabled() == true) - { - if (nodeRefs != null) - { - logger.debug("Write content: " + nodeRefs.size() + " nodes found for execution"); - } - else - { - logger.debug("No nodes found to write content to!"); - } - } - - if (nodeRefs != null) - { - for (NodeRef nodeRef : nodeRefs) - { - //Get the content writer - ContentWriter writer = this.contentService.getWriter(nodeRef, property, true); - - // Set the content format details (if they have been specified) - if (format != null) - { - writer.setEncoding(format.getEncoding()); - writer.setMimetype(format.getMimetype()); - } - - // Write the content - InputStream is = new ByteArrayInputStream(content); - writer.putContent(is); - - if (logger.isDebugEnabled() == true) - { - logger.debug("Write content: content written on node " + nodeRef.toString() + " with format " + format.getMimetype() + "|" + format.getEncoding()); - } - - results.add(createResult(WRITE_CONTENT, null, nodeRef, nodeRef)); - } - } - } - - private void executeCMLDelete(CMLDelete delete, ExecutionContext context, List results) - { - List nodeRefs = Utils.resolvePredicate(delete.getWhere(), this.nodeService, this.searchService, this.namespaceService); - for (NodeRef nodeRef : nodeRefs) - { - // Delete the node - this.nodeService.deleteNode(nodeRef); - - // Create the result - results.add(createResult(DELETE, null, nodeRef, null)); - } - } - - private void executeCMLMove(CMLMove move, ExecutionContext context, List results) - { - NodeRef destinationNodeRef = getNodeRef(move.getTo_id(), move.getTo(), context); - if (destinationNodeRef != null) - { - QName assocType = null; - QName assocName = null; - if (move.getTo_id() != null) - { - assocType = QName.createQName(move.getAssociationType()); - assocName = QName.createQName(move.getChildName()); - } - else - { - assocType = QName.createQName(move.getTo().getAssociationType()); - assocName = QName.createQName(move.getTo().getChildName()); - } - - List nodesToMove = getNodeRefList(move.getWhere_id(), move.getWhere(), context); - for (NodeRef nodeToMove : nodesToMove) - { - NodeRef newNodeRef = this.nodeService.moveNode(nodeToMove, destinationNodeRef, assocType, assocName).getChildRef(); - - // Create the result - results.add(createResult(MOVE, null, nodeToMove, newNodeRef)); - } - } - } - - private NodeRef getNodeRef(String id, ParentReference parentReference, ExecutionContext context) - { - NodeRef nodeRef = null; - if (id != null && id.length() != 0) - { - nodeRef = context.getNodeRef(id); - } - else - { - nodeRef = Utils.convertToNodeRef(parentReference, this.nodeService, this.searchService, this.namespaceService); - } - - return nodeRef; - } - - private NodeRef getNodeRef(String id, Reference reference, ExecutionContext context) - { - NodeRef nodeRef = null; - if (id != null && id.length() != 0) - { - nodeRef = context.getNodeRef(id); - } - else - { - nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - } - - return nodeRef; - } - - private void executeCMLCopy(CMLCopy copy, ExecutionContext context, List results) - { - NodeRef destinationNodeRef = getNodeRef(copy.getTo_id(), copy.getTo(), context); - if (destinationNodeRef != null) - { - QName assocType = null; - QName assocName = null; - if (copy.getTo_id() != null) - { - assocType = QName.createQName(copy.getAssociationType()); - assocName = QName.createQName(copy.getChildName()); - } - else - { - assocType = QName.createQName(copy.getTo().getAssociationType()); - assocName = QName.createQName(copy.getTo().getChildName()); - } - - boolean copyChildren = false; - Boolean value = copy.getChildren(); - if (value != null) - { - copyChildren = value.booleanValue(); - } - - List nodesToCopy = getNodeRefList(copy.getWhere_id(), copy.getWhere(), context); - for (NodeRef nodeToCopy : nodesToCopy) - { - NodeRef newNodeRef = this.copyService.copyAndRename(nodeToCopy, destinationNodeRef, assocType, assocName, copyChildren); - - // Create the result - results.add(createResult(COPY, null, nodeToCopy, newNodeRef)); - } - } - - } - - private void executeCMLAddChild(CMLAddChild addChild, ExecutionContext context, List results) - { - NodeRef nodeRef = getNodeRef(addChild.getTo_id(), addChild.getTo(), context); - if (nodeRef != null) - { - QName assocType = null; - QName assocName = null; - if (addChild.getTo_id() != null) - { - assocType = QName.createQName(addChild.getAssociationType()); - assocName = QName.createQName(addChild.getChildName()); - } - else - { - assocType = QName.createQName(addChild.getTo().getAssociationType()); - assocName = QName.createQName(addChild.getTo().getChildName()); - } - - List whereNodeRefs = getNodeRefList(addChild.getWhere_id(), addChild.getWhere(), context); - for (NodeRef whereNodeRef : whereNodeRefs) - { - this.nodeService.addChild(nodeRef, whereNodeRef, assocType, assocName); - - // Create the result - results.add(createResult(ADD_CHILD, null, nodeRef, whereNodeRef)); - } - } - } - - private void executeCMLRemoveChild(CMLRemoveChild removeChild, ExecutionContext context, List results) - { - NodeRef parentNodeRef = getNodeRef(removeChild.getFrom_id(), removeChild.getFrom(), context); - if (parentNodeRef != null) - { - List childNodeRefs = getNodeRefList(removeChild.getWhere_id(), removeChild.getWhere(), context); - for (NodeRef childNodeRef : childNodeRefs) - { - this.nodeService.removeChild(parentNodeRef, childNodeRef); - - // Create the result - results.add(createResult(REMOVE_CHILD, null, parentNodeRef, null)); - } - } - - } - - private void executeCMLCreateAssociation(CMLCreateAssociation createAssoc, ExecutionContext context, List results) - { - QName assocType = QName.createQName(createAssoc.getAssociation()); - if (assocType != null) - { - List fromNodeRefs = getNodeRefList(createAssoc.getFrom_id(), createAssoc.getFrom(), context); - List toNodeRefs = getNodeRefList(createAssoc.getTo_id(), createAssoc.getTo(), context); - for (NodeRef fromNodeRef : fromNodeRefs) - { - for (NodeRef toNodeRef : toNodeRefs) - { - this.nodeService.createAssociation(fromNodeRef, toNodeRef, assocType); - - // Create the result - results.add(createResult(CREATE_ASSOCIATION, null, fromNodeRef, toNodeRef)); - } - } - } - } - - private void executeCMLRemoveAssociation(CMLRemoveAssociation removeAssoc, ExecutionContext context, List results) - { - QName assocType = QName.createQName(removeAssoc.getAssociation()); - if (assocType != null) - { - List fromNodeRefs = getNodeRefList(removeAssoc.getFrom_id(), removeAssoc.getFrom(), context); - List toNodeRefs = getNodeRefList(removeAssoc.getTo_id(), removeAssoc.getTo(), context); - for (NodeRef fromNodeRef : fromNodeRefs) - { - for (NodeRef toNodeRef : toNodeRefs) - { - this.nodeService.removeAssociation(fromNodeRef, toNodeRef, assocType); - - // Create the result - results.add(createResult(REMOVE_ASSOCIATION, null, fromNodeRef, toNodeRef)); - } - } - } - } - - private class ExecutionContext - { - private Map idMap = new HashMap(); - private Map nodeRefMap = new HashMap(); - - public void addId(String id, NodeRef nodeRef) - { - this.idMap.put(id, nodeRef); - this.nodeRefMap.put(nodeRef, id); - } - - public NodeRef getNodeRef(String id) - { - return this.idMap.get(id); - } - - public String getId(NodeRef nodeRef) - { - return this.nodeRefMap.get(nodeRef); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/QuerySession.java b/source/java/org/alfresco/repo/webservice/QuerySession.java deleted file mode 100644 index cf03a5a1e8..0000000000 --- a/source/java/org/alfresco/repo/webservice/QuerySession.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import java.io.Serializable; - -import org.alfresco.service.ServiceRegistry; - -/** - * An interface for objects that track the query and its results. The only commonality between - * the different types of results used in the WebServices return values is that they are - * Serializable. - * - * @author Derek Hulley - */ -public interface QuerySession extends Serializable -{ - /** - * Retrieves the id this query session can be identified as - * - * @return Id of this query session - */ - public String getId(); - - /** - * Check if the session is expecting more results. This will be false if the - * cursor previously passed the end of a given set of results. - */ - public boolean haveMoreResults(); - - /** - * Get the next batch of results from the full set of available results. If there are no results - * available, then this session must go and fetch them. It is up to the implementation to provide - * a means for this to occur. - * - * @param serviceRegistry - * the services to perform a query - * @param allResults - * All available results. It may be necessary to requery to get the results. - * @return - * Returns the next batch of results based on the maximum fetch size. If there are no - * more results, the resultset will be empty. - */ - public RESULTSET getNextResults(ServiceRegistry serviceRegistry); -} diff --git a/source/java/org/alfresco/repo/webservice/ServerQuery.java b/source/java/org/alfresco/repo/webservice/ServerQuery.java deleted file mode 100644 index 4ce8429861..0000000000 --- a/source/java/org/alfresco/repo/webservice/ServerQuery.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import java.io.Serializable; - -import org.alfresco.service.ServiceRegistry; - -/** - * Interface definition for a QuerySession. - * - * @author gavinc - */ -public interface ServerQuery extends Serializable -{ - /** System column namess */ - public static String SYS_COL_ASSOC_TYPE = "associationType"; - public static String SYS_COL_ASSOC_NAME = "associationName"; - public static String SYS_COL_IS_PRIMARY = "isPrimary"; - public static String SYS_COL_NTH_SIBLING = "nthSibling"; - - /** - * Executes the query and returns the full query results. - * - * @param - * The services to help make the query - * @return - * The full set of query results. - * The results must be empty if there are no results. - */ - public RESULTSET execute(ServiceRegistry serviceRegistry); - - /** - * Executes the query and return all results up to given maximum number. - * Note that this is not the same as the page size, but rather is a total - * upper limit to the number of results that can viewed. - * - * @param - * The services to help make the query - * @param maxResults - * the total number of results to retrieve - * @return - * The full set of query results up to the maximum given. - * The results must be empty if there are no results. - */ - public RESULTSET execute(ServiceRegistry serviceRegistry, long maxResults); -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/Utils.java b/source/java/org/alfresco/repo/webservice/Utils.java deleted file mode 100644 index 72ee2a4748..0000000000 --- a/source/java/org/alfresco/repo/webservice/Utils.java +++ /dev/null @@ -1,866 +0,0 @@ -/* - * Copyright (C) 2005-2013 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.List; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; -import javax.transaction.UserTransaction; -import javax.xml.rpc.server.ServletEndpointContext; - -import org.alfresco.repo.transaction.RetryingTransactionHelper; -import org.alfresco.repo.webservice.axis.QueryConfigHandler; -import org.alfresco.repo.webservice.types.AssociationDefinition; -import org.alfresco.repo.webservice.types.Cardinality; -import org.alfresco.repo.webservice.types.ClassDefinition; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.ParentReference; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.PropertyDefinition; -import org.alfresco.repo.webservice.types.Query; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.RoleDefinition; -import org.alfresco.repo.webservice.types.Store; -import org.alfresco.repo.webservice.types.Version; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DataTypeDefinition; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; -import org.alfresco.service.cmr.search.ResultSet; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.cmr.version.VersionType; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; -import org.alfresco.service.transaction.TransactionService; -import org.apache.axis.MessageContext; -import org.apache.axis.transport.http.HTTPConstants; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.context.support.WebApplicationContextUtils; - -/** - * Helper class used by the web services - * - * @author gavinc - */ -public class Utils -{ - /** Default batch size for query results - 1000 */ - public static final int DEFAULT_BATCH_SIZE = 1000; - public static final String REPOSITORY_SERVICE_NAMESPACE = "http://www.alfresco.org/ws/service/repository/1.0"; - - /** Get the logger for this class */ - private static Log logger = LogFactory.getLog(Utils.class); - - private Utils() - { - // don't allow construction - } - - /** Query language names */ - public static final String QUERY_LANG_LUCENE = "lucene"; - public static final String QUERY_LANG_XPATH = "xpath"; - public static final String QUERY_LANG_CQL = "cql"; - - - /** - * Utility method to convert from a string representation of a property value into the correct object representation. - * - * @param dictionaryService the dictionary service - * @param propertyName the qname of the property in question - * @param propertyValue the property vlaue as a string - * @return the object value of the property - */ - public static Serializable getValueFromNamedValue(DictionaryService dictionaryService, QName propertyName, NamedValue namedValue) - { - Serializable result = null; - if (namedValue != null) - { - org.alfresco.service.cmr.dictionary.PropertyDefinition propDef = dictionaryService.getProperty(propertyName); - if (propDef == null) - { - if (namedValue.getIsMultiValue() == false) - { - result = namedValue.getValue(); - } - else - { - String[] values = namedValue.getValues(); - - if (values != null) - { - Collection collection = new ArrayList(values.length); - for (String value : values) - { - collection.add(value); - } - result = (Serializable)collection; - } - } - } - else - { - DataTypeDefinition propertyType = propDef.getDataType(); - if (propertyType != null) - { - if (namedValue.getIsMultiValue() == false) - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Converting single-valued property '" + propertyName.toString() + "' with value " + namedValue.getValue()); - } - - result = (Serializable)DefaultTypeConverter.INSTANCE.convert(propertyType, namedValue.getValue()); - } - else - { - String[] values = namedValue.getValues(); - - if (logger.isDebugEnabled() == true) - { - logger.debug("Converting multi-valued property '" + propertyName.toString() + "' with values " + Arrays.toString(values)); - } - - if (values != null) - { - Collection collection = new ArrayList(values.length); - for (String value : values) - { - collection.add((Serializable)DefaultTypeConverter.INSTANCE.convert(propertyType, value)); - } - - if (logger.isDebugEnabled() == true) - { - logger.debug("The collection for the multi-value property has been generated '" + collection.toString()); - } - - result = (Serializable)collection; - } - } - } - else - { - if (logger.isDebugEnabled() == true) - { - logger.debug("No property definition was found for property '" + propertyName.toString() + "'"); - } - } - } - } - return result; - } - - /** - * Create a named value object from the property name and value informaiton - * - * @param dictionaryService the dictionary service - * @param propertyName the property qname - * @param propertyValue the property value - * @return the namedValue object - */ - public static NamedValue createNamedValue(DictionaryService dictionaryService, QName propertyName, Serializable propertyValue) - { - NamedValue namedValue = new NamedValue(); - namedValue.setName(propertyName.toString()); - - if (logger.isDebugEnabled() == true) - { - logger.debug("Creating named value for property '" + propertyName + "' with value '" + propertyValue + "'"); - } - - if (propertyValue != null) - { - org.alfresco.service.cmr.dictionary.PropertyDefinition propDef = dictionaryService.getProperty(propertyName); - if (propDef != null) - { - if (propDef.isMultiValued() == true) - { - namedValue.setIsMultiValue(true); - if (propertyValue instanceof Collection) - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Converting multivalue for property '" + propertyName + "'"); - } - - Collection collection = (Collection)propertyValue; - String[] values = new String[collection.size()]; - int count = 0; - for (Serializable value : collection) - { - values[count] = DefaultTypeConverter.INSTANCE.convert(String.class, value); - count ++; - } - namedValue.setValues(values); - } - } - else - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Converting single value for property '" + propertyName + "'"); - } - - namedValue.setIsMultiValue(false); - namedValue.setValue(DefaultTypeConverter.INSTANCE.convert(String.class, propertyValue)); - } - } - else - { - if (logger.isDebugEnabled() == true) - { - logger.debug("No property definition found for property '" + propertyName + "'"); - } - - namedValue.setIsMultiValue(false); - namedValue.setValue(propertyValue.toString()); - } - } - - return namedValue; - } - - /** - * Converts the web service Store type to a StoreRef used by the repository - * - * @param store - * The Store to convert - * @return The converted StoreRef - */ - public static StoreRef convertToStoreRef(Store store) - { - return new StoreRef(store.getScheme(), store.getAddress()); - } - - /** - * Converts a store reference ot a Store type - * - * @param ref - * the store reference - * @return the store - */ - public static Store convertToStore(StoreRef ref) - { - return new Store(ref.getProtocol(), ref - .getIdentifier()); - } - - /** - * Converts the given Reference web service type into a repository NodeRef - * - * @param ref - * The Reference to convert - * @return The NodeRef representation of the Reference - */ - public static NodeRef convertToNodeRef(Reference ref, - NodeService nodeService, SearchService searchService, - NamespaceService namespaceService) - { - return resolveToNodeRef(ref.getStore(), ref.getUuid(), ref.getPath(), - nodeService, searchService, namespaceService); - } - - /** - * Converts the given ParentReference web service type into a repository - * NodeRef - * - * @param parentRef - * The ParentReference to convert - * @return The NodeRef representation of the ParentReference - */ - public static NodeRef convertToNodeRef(ParentReference parentRef, - NodeService nodeService, SearchService searchService, - NamespaceService namespaceService) - { - // TODO: Also take into account any association information passed in - // the ParentReference - - return resolveToNodeRef(parentRef.getStore(), parentRef.getUuid(), - parentRef.getPath(), nodeService, searchService, - namespaceService); - } - - /** - * Converts the given repository NodeRef object into a web service Reference - * type - * - * @param node - * The node to create a Reference for - * @return The Reference - */ - public static Reference convertToReference(NodeService nodeService, NamespaceService namespaceService, NodeRef node) - { - Reference ref = new Reference(); - Store store = new Store(node.getStoreRef().getProtocol(), node.getStoreRef().getIdentifier()); - ref.setStore(store); - ref.setUuid(node.getId()); - - // Need to check if node still exists (e.g., after a delete operation) so getPath() - // doesn't fail - if(nodeService.exists(node) == true) - { - if (logger.isDebugEnabled()) - { - logger.debug("setting path for reference to: " + nodeService.getPath(node).toPrefixString(namespaceService)); - } - - // so clients can get the path too - ref.setPath(nodeService.getPath(node).toPrefixString(namespaceService)); - } - - return ref; - } - - /** - * Resolves the given parameters to a repository NodeRef - * - * @param store - * The Store to search within - * @param uuid - * The id of the required node.c - * @param path - * The path to the required node. If a uuid is given the uuid is used -+ * to find the node. Otherwise, the path is used. - * @param nodeService - * NodeService to use - * @param searchService - * SearchService to use - * @param namespaceService - * NamespaceService to use - * @return A repository NodeRef - */ - public static NodeRef resolveToNodeRef(Store store, String uuid, - String path, NodeService nodeService, SearchService searchService, - NamespaceService namespaceService) - { - if (store == null) - { - throw new IllegalArgumentException( - "A Store must be supplied to resolve to a NodeRef"); - } - - NodeRef nodeRef = null; - - // If uuid is null, then use the path to find the node - if (uuid == null || uuid.length() == 0) - { - if (path != null && path.length() != 0) - { - if (logger.isDebugEnabled() == true) - { - logger.debug("Resolving path: " + path); - } - - NodeRef rootNodeRef = nodeService.getRootNode(convertToStoreRef(store)); - List nodes = searchService.selectNodes(rootNodeRef, path, null, namespaceService, false); - - // make sure we only have one result - if (nodes.size() != 1) - { - StringBuilder builder = new StringBuilder( - "Failed to resolve to a single NodeRef with parameters (store="); - builder.append(store.getScheme()).append(":") - .append(store.getAddress()); - builder.append(" uuid=").append(uuid); - builder.append(" path=").append(path).append("), found "); - builder.append(nodes.size()).append(" nodes."); - throw new IllegalStateException(builder.toString()); - } - - nodeRef = nodes.get(0); - } - else - { - throw new IllegalArgumentException("A uuid or a path must be supplied to resolve to a NodeRef"); - } - - - } - else // use the uuid - { - nodeRef = new NodeRef(convertToStoreRef(store), uuid); - } - - return nodeRef; - } - - /** - * Resolves the given predicate into a list of NodeRefs that can be acted - * upon - * - * @param predicate - * The predicate passed from the client - * @param nodeService - * NodeService to use - * @param searchService - * SearchService to use - * @param namespaceService - * NamespaceService to use - * @return A List of NodeRef objects - */ - public static List resolvePredicate(Predicate predicate, - NodeService nodeService, SearchService searchService, - NamespaceService namespaceService) - { - List nodeRefs = null; - - if (predicate.getNodes() != null) - { - Reference[] nodes = predicate.getNodes(); - nodeRefs = new ArrayList(nodes.length); - - for (int x = 0; x < nodes.length; x++) - { - nodeRefs.add(convertToNodeRef(nodes[x], nodeService, - searchService, namespaceService)); - } - } - else if (predicate.getQuery() != null) - { - // make sure a query is present - Query query = predicate.getQuery(); - - if (query == null) - { - throw new IllegalStateException( - "Either a set of nodes or a query must be supplied in a Predicate."); - } - - // make sure a Store has been supplied too - if (predicate.getStore() == null) - { - throw new IllegalStateException( - "A Store has to be supplied to in order to execute a query."); - } - - String language = query.getLanguage(); - if (language.equals(QUERY_LANG_LUCENE) != true) - { - throw new IllegalArgumentException("Only '" - + QUERY_LANG_LUCENE - + "' queries are currently supported!"); - } - - // execute the query - ResultSet searchResults = null; - try - { - searchResults = searchService.query(Utils - .convertToStoreRef(predicate.getStore()), language, query.getStatement()); - // get hold of all the NodeRef's from the results - nodeRefs = searchResults.getNodeRefs(); - } - finally - { - if (searchResults != null) - { - searchResults.close(); - } - } - } - else if (predicate.getStore() != null) - { - // Since only the store was supplied interpret this to mean the predicate should be resolved to the - // stores root node - Store store = predicate.getStore(); - NodeRef rootNode = nodeService.getRootNode(Utils.convertToStoreRef(store)); - - nodeRefs = new ArrayList(); - nodeRefs.add(rootNode); - } - - return nodeRefs; - } - - /** - * Returns the current Spring WebApplicationContext object - * - * @param msgContext - * SOAP message context - * @return The Spring WebApplicationContext - */ - public static WebApplicationContext getSpringContext(MessageContext msgContext) - { - // get hold of the web application context via the message context - HttpServletRequest req = (HttpServletRequest) msgContext - .getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST); - ServletContext servletCtx = req.getSession().getServletContext(); - return WebApplicationContextUtils - .getRequiredWebApplicationContext(servletCtx); - } - - /** - * Returns a UserTransaction that can be used within a service call - * - * @param msgContext - * SOAP message context - * @return a UserTransaction - * - * @deprecated Use {@link #getRetryingTransactionHelper(MessageContext)} - */ - public static UserTransaction getUserTransaction(MessageContext msgContext) - { - // get the service regsistry - ServiceRegistry svcReg = (ServiceRegistry) getSpringContext(msgContext) - .getBean(ServiceRegistry.SERVICE_REGISTRY); - - TransactionService transactionService = svcReg.getTransactionService(); - return transactionService.getUserTransaction(); - } - - /** - * Get the executer to wrap transactional callbacks in for better transaction behaviour. - * - * @param msgContext - * SOAP message context - * @return - * a transactional, retrying, callback executer - */ - public static RetryingTransactionHelper getRetryingTransactionHelper(MessageContext msgContext) - { - // get the service regsistry - ServiceRegistry svcReg = (ServiceRegistry) getSpringContext(msgContext) - .getBean(ServiceRegistry.SERVICE_REGISTRY); - - TransactionService transactionService = svcReg.getTransactionService(); - return transactionService.getRetryingTransactionHelper(); - } - - /** - * Gets the current http session id - * - * @return the current http session id, null if none found - */ - public static String getSessionId() - { - HttpSession session = getSession(); - return ((session != null) ? (session.getId()) : (null)); - } - - private static HttpSession getSession() - { - HttpSession result = null; - - ServletEndpointContext endpointContext = (ServletEndpointContext) MessageContext.getCurrentContext().getProperty("servletEndpointContext"); - if (endpointContext != null) - { - result = endpointContext.getHttpSession(); - } - - return result; - } - - /** - * Invalidates the current http session - */ - public static void invalidateSession() - { - HttpSession session = getSession(); - if (session != null) - { - session.invalidate(); - } - } - - /** - * Returns the value of the fetchSize from the - * QueryConfiguration SOAP header (if present) - * - * @param msgContext - * The SOAP MessageContext - * @return The current batch size or -1 if the header is not present - */ - public static int getBatchSize(MessageContext msgContext) - { - int batchSize = DEFAULT_BATCH_SIZE; - - Integer batchConfigSize = (Integer) MessageContext.getCurrentContext() - .getProperty(QueryConfigHandler.ALF_FETCH_SIZE); - if (batchConfigSize != null) - { - batchSize = batchConfigSize.intValue(); - } - - return batchSize; - } - - /** - * Converts a repository version object into a web service version object. - * - * @param version - * the repository version object - * @return the web service version object - */ - public static Version convertToVersion( - NodeService nodeService, - NamespaceService namespaceService, - org.alfresco.service.cmr.version.Version version) - { - Version webServiceVersion = new Version(); - - // Set the basic properties - webServiceVersion.setId(Utils.convertToReference(nodeService, namespaceService, version - .getFrozenStateNodeRef())); - webServiceVersion.setCreator(version.getCreator()); - webServiceVersion.setLabel(version.getVersionLabel()); - - // Set the created date - Date createdDate = version.getCreatedDate(); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(createdDate); - webServiceVersion.setCreated(calendar); - - // Set the falg to indicate whether the version was mojor or minor - boolean isMajor = false; - VersionType versionType = version.getVersionType(); - if (versionType != null - && versionType.equals(VersionType.MAJOR) == true) - { - isMajor = true; - } - webServiceVersion.setMajor(isMajor); - - // Set the commetary values - Map versionProps = version.getVersionProperties(); - NamedValue[] namedValues = new NamedValue[versionProps.size()]; - int iIndex = 0; - for (Map.Entry entry : versionProps.entrySet()) - { - String value = null; - try - { - value = DefaultTypeConverter.INSTANCE.convert(String.class, entry.getValue()); - } - catch (Throwable exception) - { - value = entry.getValue().toString(); - } - namedValues[iIndex] = new NamedValue(entry.getKey(), false, value, null); - iIndex++; - } - webServiceVersion.setCommentaries(namedValues); - - return webServiceVersion; - } - - /** - * Creates a ClassDefinition web service type object for the given - * repository ClassDefinition - * - * @param ddClassDef The repository ClassDefinition to generate - * @return The web service ClassDefinition representation - */ - public static ClassDefinition setupClassDefObject(DictionaryService dictionaryService, org.alfresco.service.cmr.dictionary.ClassDefinition ddClassDef) - { - ClassDefinition classDef = new ClassDefinition(); - classDef.setName(ddClassDef.getName().toString()); - classDef.setIsAspect(ddClassDef.isAspect()); - - if (ddClassDef.getTitle(dictionaryService) != null) - { - classDef.setTitle(ddClassDef.getTitle(dictionaryService)); - } - if (ddClassDef.getDescription(dictionaryService) != null) - { - classDef.setDescription(ddClassDef.getDescription(dictionaryService)); - } - if (ddClassDef.getParentName() != null) - { - classDef.setSuperClass(ddClassDef.getParentName().toString()); - } - - // represent the properties - Map props = ddClassDef.getProperties(); - if (props != null) - { - PropertyDefinition[] propDefs = new PropertyDefinition[props.size()]; - int pos = 0; - for (org.alfresco.service.cmr.dictionary.PropertyDefinition ddPropDef : props.values()) - { - PropertyDefinition propDef = setupPropertyDefObject(dictionaryService, ddPropDef); - propDefs[pos] = propDef; - pos++; - } - - // add properties to the overall ClassDefinition - classDef.setProperties(propDefs); - } - - // represent the associations - Map assocs = ddClassDef.getAssociations(); - if (assocs != null) - { - AssociationDefinition[] assocDefs = new AssociationDefinition[assocs.size()]; - int pos = 0; - for (org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef : assocs.values()) - { - AssociationDefinition assocDef = setupAssociationDefObject(dictionaryService, ddAssocDef); - assocDefs[pos] = assocDef; - pos++; - } - - classDef.setAssociations(assocDefs); - } - - 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(DictionaryService dictionaryService, 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(dictionaryService) != null) - { - propDef.setTitle(ddPropDef.getTitle(dictionaryService)); - } - if (ddPropDef.getDescription(dictionaryService) != null) - { - propDef.setDescription(ddPropDef.getDescription(dictionaryService)); - } - 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(DictionaryService dictionaryService, org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef) - { - AssociationDefinition assocDef = new AssociationDefinition(); - assocDef.setName(ddAssocDef.getName().toString()); - assocDef.setIsChild(ddAssocDef.isChild()); - if (ddAssocDef.getTitle(dictionaryService) != null) - { - assocDef.setTitle(ddAssocDef.getTitle(dictionaryService)); - } - if (ddAssocDef.getDescription(dictionaryService) != null) - { - assocDef.setDescription(ddAssocDef.getDescription(dictionaryService)); - } - - 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 - * - * @param ddAssocDef The AssociationDefinition to get the cardinality from - * @return The Cardinality - */ - private static Cardinality setupSourceCardinalityObject(org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef) - { - if (ddAssocDef.isSourceMandatory() == false && ddAssocDef.isSourceMany() == false) - { - // 0..1 - return Cardinality.value1; - } - else if (ddAssocDef.isSourceMandatory() && ddAssocDef.isSourceMany() == false) - { - // 1 - return Cardinality.value2; - } - else if (ddAssocDef.isSourceMandatory() && ddAssocDef.isSourceMany()) - { - // 1..* - return Cardinality.value4; - } - else - { - // * - return Cardinality.value3; - } - } - - /** - * Creates a web service Cardinality type for the target from the given repository AssociationDefinition - * - * @param ddAssocDef The AssociationDefinition to get the cardinality from - * @return The Cardinality - */ - private static Cardinality setupTargetCardinalityObject(org.alfresco.service.cmr.dictionary.AssociationDefinition ddAssocDef) - { - if (ddAssocDef.isTargetMandatory() == false && ddAssocDef.isTargetMany() == false) - { - // 0..1 - return Cardinality.value1; - } - else if (ddAssocDef.isTargetMandatory() && ddAssocDef.isTargetMany() == false) - { - // 1 - return Cardinality.value2; - } - else if (ddAssocDef.isTargetMandatory() && ddAssocDef.isTargetMany()) - { - // 1..* - return Cardinality.value4; - } - else - { - // * - return Cardinality.value3; - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/accesscontrol/AccessControlWebService.java b/source/java/org/alfresco/repo/webservice/accesscontrol/AccessControlWebService.java deleted file mode 100644 index ca4348df08..0000000000 --- a/source/java/org/alfresco/repo/webservice/accesscontrol/AccessControlWebService.java +++ /dev/null @@ -1,795 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.accesscontrol; - -import java.rmi.RemoteException; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - -import org.alfresco.repo.transaction.TransactionServiceImpl; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.action.ActionFault; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.security.AccessPermission; -import org.alfresco.service.cmr.security.AccessStatus; -import org.alfresco.service.cmr.security.AuthorityService; -import org.alfresco.service.cmr.security.AuthorityType; -import org.alfresco.service.cmr.security.OwnableService; -import org.alfresco.service.cmr.security.PermissionService; -import org.alfresco.service.namespace.QName; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -public class AccessControlWebService extends AbstractWebService implements AccessControlServiceSoapPort -{ - /** Log */ - private static Log logger = LogFactory.getLog(AccessControlWebService.class); - - /** Transaction service */ - private TransactionServiceImpl transactionService = null; - - /** Permission service */ - private PermissionService permissionService = null; - - /** Ownable service */ - private OwnableService ownableService = null; - - /** Authority service */ - private AuthorityService authorityService; - - /** - * Set the transaction service - * - * @param transactionService the transaction service - */ - public void setTransactionService(TransactionServiceImpl transactionService) - { - this.transactionService = transactionService; - } - - /** - * Set the permissions service - * - * @param permissionService the permissions service - */ - public void setPermissionService(PermissionService permissionService) - { - this.permissionService = permissionService; - } - - /** - * Set the ownable service - * - * @param ownableService the ownable service - */ - public void setOwnableService(OwnableService ownableService) - { - this.ownableService = ownableService; - } - - /** - * Set the authentication service - * - * @param authorityService the authentication service - */ - public void setAuthorityService(AuthorityService authorityService) - { - this.authorityService = authorityService; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getACLs(org.alfresco.repo.webservice.types.Predicate, org.alfresco.repo.webservice.accesscontrol.ACE) - */ - public ACL[] getACLs(final Predicate predicate, final ACE filter) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ACL[] execute() throws Exception - { - return getACLsImpl(predicate, filter); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Get the ACL's for the predicate, filtered if appropraite. - * - * @param predicate the predicate - * @param filter the fileter (optional) - * @return an array of ACL's - */ - private ACL[] getACLsImpl(Predicate predicate, ACE filter) - { - // Resolve the nodes - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - ACL[] acls = new ACL[nodes.size()]; - - int index = 0; - for (NodeRef node : nodes) - { - // Create ACL of node - ACL acl = getACLFromNodeRef(node, filter); - - // Add the acl to the results - acls[index] = acl; - index++; - } - - return acls; - } - - /** - * Given a node reference, creates the relating ACL - * - * @param node the node reference - * @return the ACL - */ - private ACL getACLFromNodeRef(NodeRef node, ACE filter) - { - // Create the acl - ACL acl = new ACL(); - acl.setReference(Utils.convertToReference(this.nodeService, this.namespaceService, node)); - - // Set the inhertied value - boolean inheritPermission = this.permissionService.getInheritParentPermissions(node); - acl.setInheritPermissions(inheritPermission); - - // Get the access permissions - Set accessPermissions = this.permissionService.getAllSetPermissions(node); - ACE[] aces = new ACE[accessPermissions.size()]; - - // Marshal the permissions into ACE's - int count = 0; - for (AccessPermission permission : accessPermissions) - { - // TODO need to filter the results accordingly using ACE filter - - // Create the ace - org.alfresco.repo.webservice.accesscontrol.AccessStatus accessStatus = org.alfresco.repo.webservice.accesscontrol.AccessStatus.declined; - if (AccessStatus.ALLOWED.equals(permission.getAccessStatus()) == true) - { - accessStatus = org.alfresco.repo.webservice.accesscontrol.AccessStatus.acepted; - } - - ACE ace = new ACE(permission.getAuthority(), - permission.getPermission(), - accessStatus); - - // Add ace to array - aces[count] = ace; - count ++; - } - acl.setAces(aces); - return acl; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#addACEs(org.alfresco.repo.webservice.types.Predicate, org.alfresco.repo.webservice.accesscontrol.ACE[]) - */ - public ACL[] addACEs(final Predicate predicate, final ACE[] aces) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ACL[] execute() throws Exception - { - return addACEsImpl(predicate, aces); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Add ACE to a collection of nodes - * - * @param predicate the predicate - * @param aces the ACE's to add - * @return the ACL's of the modified node - */ - private ACL[] addACEsImpl(Predicate predicate, ACE[] aces) - { - // Resolce the predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - ACL[] acls = new ACL[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - // Add the permissions for each ace - for (ACE ace : aces) - { - // Add the permissions associated with the ace - boolean allow = false; - if (ace.getAccessStatus().equals(org.alfresco.repo.webservice.accesscontrol.AccessStatus.acepted) == true) - { - allow = true; - } - this.permissionService.setPermission(node, ace.getAuthority(), ace.getPermission(), allow); - } - - // Add the ACL for this node to the returned array - acls[count] = getACLFromNodeRef(node, null); - count++; - } - - return acls; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#removeACEs(org.alfresco.repo.webservice.types.Predicate, org.alfresco.repo.webservice.accesscontrol.ACE[]) - */ - public ACL[] removeACEs(final Predicate predicate, final ACE[] aces) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ACL[] execute() throws Exception - { - return removeACEsImpl(predicate, aces); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Remove specified ACE's from the nodes. Removes all permissions if no ACE's specified. - * - * @param predicate the predicate - * @param aces the ACE's to remove - * @return the modified ACL's - */ - private ACL[] removeACEsImpl(Predicate predicate, ACE[] aces) - { - // Resolce the predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - ACL[] acls = new ACL[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - if (aces == null) - { - // Delete all the permissions - this.permissionService.deletePermissions(node); - } - else - { - // Delete the permissions for each ACE - for (ACE ace : aces) - { - this.permissionService.deletePermission(node, ace.getAuthority(), ace.getPermission()); - } - } - - // Add the ACL for this node to the returned array - acls[count] = getACLFromNodeRef(node, null); - count++; - } - - return acls; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getPermissions(org.alfresco.repo.webservice.types.Predicate) - */ - public GetPermissionsResult[] getPermissions(final Predicate predicate) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public GetPermissionsResult[] execute() throws Exception - { - return getPermissionsImpl(predicate); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Get the permissions - * - * @param predicate the predicate - * @return the permissions available - */ - private GetPermissionsResult[] getPermissionsImpl(Predicate predicate) - { - // Resolve the predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - GetPermissionsResult[] results = new GetPermissionsResult[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - // Get the permissions - Set permissions = this.permissionService.getSettablePermissions(node); - - // Create the permissions result object - GetPermissionsResult result = new GetPermissionsResult(); - result.setReference(Utils.convertToReference(this.nodeService, this.namespaceService, node)); - result.setPermissions((String[])permissions.toArray(new String[permissions.size()])); - - // Add result to array - results[count] = result; - count ++; - } - - return results; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getClassPermissions(java.lang.String[]) - */ - public GetClassPermissionsResult[] getClassPermissions(final String[] classNames) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public GetClassPermissionsResult[] execute() throws Exception - { - return getClassPermissionsImpl(classNames); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Get the permissions based on type - * - * @param classNames the class names - * @return the permission results - */ - private GetClassPermissionsResult[] getClassPermissionsImpl(String[] classNames) - { - // Resolve the predicate - GetClassPermissionsResult[] results = new GetClassPermissionsResult[classNames.length]; - - int count = 0; - for (String className : classNames) - { - // Get the permissions - Set permissions = this.permissionService.getSettablePermissions(QName.createQName(className)); - - // Create the permissions result object - GetClassPermissionsResult result = new GetClassPermissionsResult(); - result.setClassName(className); - result.setPermissions((String[])permissions.toArray(new String[permissions.size()])); - - // Add result to array - results[count] = result; - count ++; - } - - return results; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#hasPermissions(org.alfresco.repo.webservice.types.Predicate, java.lang.String[]) - */ - public HasPermissionsResult[] hasPermissions(final Predicate predicate, final String[] permissions) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public HasPermissionsResult[] execute() throws Exception - { - return hasPermissionsImpl(predicate, permissions); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Determines whether a set of node has a given set of permissions. - * - * @param predicate the predicate - * @param permissions the permissions - * @return the permissions result - */ - private HasPermissionsResult[] hasPermissionsImpl(Predicate predicate, String[] permissions) - { - // Resolve the predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - List results = new ArrayList(20); - - for (NodeRef node : nodes) - { - for (String permission : permissions) - { - // Detemine whether the node has the permissions - AccessStatus accessStatus = this.permissionService.hasPermission(node, permission); - org.alfresco.repo.webservice.accesscontrol.AccessStatus accessState = org.alfresco.repo.webservice.accesscontrol.AccessStatus.declined; - if (AccessStatus.ALLOWED.equals(accessStatus) == true) - { - accessState = org.alfresco.repo.webservice.accesscontrol.AccessStatus.acepted; - } - - // Add to the results list - results.add(new HasPermissionsResult(Utils.convertToReference(this.nodeService, this.namespaceService, node), permission, accessState)); - } - } - - return (HasPermissionsResult[])results.toArray(new HasPermissionsResult[results.size()]); - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#setInheritPermission(org.alfresco.repo.webservice.types.Predicate, boolean) - */ - public ACL[] setInheritPermission(final Predicate predicate, final boolean inheritPermission) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ACL[] execute() throws Exception - { - return setInheritPermissionImpl(predicate, inheritPermission); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Set the inherit permissions flag - * - * @param predicate the predicate - * @param inheritPermission indicates whether the permissions are inherited or not - * @return the updated acl's - */ - private ACL[] setInheritPermissionImpl(Predicate predicate, boolean inheritPermission) - { - // Resolve the predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - ACL[] acls = new ACL[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - // Set the inherited permission value - this.permissionService.setInheritParentPermissions(node, inheritPermission); - - // Add the ACL of the modified node to the result - acls[count] = getACLFromNodeRef(node, null); - count ++; - } - - return acls; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getOwners(org.alfresco.repo.webservice.types.Predicate) - */ - public OwnerResult[] getOwners(final Predicate predicate) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public OwnerResult[] execute() throws Exception - { - return getOwnersImpl(predicate); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Gets the owners of the nodes - * - * @param predicate the predicate - * @return the owner details - */ - private OwnerResult[] getOwnersImpl(Predicate predicate) - { - // Convert predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - OwnerResult[] result = new OwnerResult[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - // Get the current owner of the node - String owner = this.ownableService.getOwner(node); - - // Marshal into result - result[count] = new OwnerResult(Utils.convertToReference(this.nodeService, this.namespaceService, node), owner); - count ++; - } - - return result; - } - - /** - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#setOwners(org.alfresco.repo.webservice.types.Predicate, java.lang.String) - */ - public OwnerResult[] setOwners(final Predicate predicate, final String owner) throws RemoteException, AccessControlFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public OwnerResult[] execute() throws Exception - { - return setOwnersImpl(predicate, owner); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Set the owner of a nodes - * - * @param predicate the predicate - * @param owner the owner - * @return the owner results updated - */ - private OwnerResult[] setOwnersImpl(Predicate predicate, String owner) - { - // Convert predicate - List nodes = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - OwnerResult[] result = new OwnerResult[nodes.size()]; - - int count = 0; - for (NodeRef node : nodes) - { - // Set the owner of the node - this.ownableService.setOwner(node, owner); - - // Marshal into result - result[count] = new OwnerResult(Utils.convertToReference(this.nodeService, this.namespaceService, node), owner); - count ++; - } - - return result; - } - - /** - * Add an existing authority as a child of another authority. - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#addChildAuthorities(java.lang.String, java.lang.String[]) - */ - public String[] addChildAuthorities(String parentAuthority, String[] authorities) - throws RemoteException, AccessControlFault - { - String[] result = new String[authorities.length]; - int index = 0; - for (String authority : authorities) - { - this.authorityService.addAuthority(parentAuthority, authority); - result[index] = authority; - index++; - } - return result; - } - - /** - * Creates a new authority under a given parent authority. If no parent authority is provided then the new authority is - * created at the root. - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#createAuthorities(java.lang.String, org.alfresco.repo.webservice.accesscontrol.NewAuthority[]) - */ - public String[] createAuthorities(String parentAuthority, NewAuthority[] newAuthorites) - throws RemoteException, AccessControlFault - { - String[] result = new String[newAuthorites.length]; - int index = 0; - for (NewAuthority newAuthority : newAuthorites) - { - AuthorityType authorityType = AuthorityType.valueOf(newAuthority.getAuthorityType()); - String authority = this.authorityService.createAuthority(authorityType, newAuthority.getName()); - if (parentAuthority != null) - { - this.authorityService.addAuthority(parentAuthority, authority); - } - result[index] = authority; - index++; - } - return result; - } - - /** - * Delete existing authority - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#deleteAuthorities(java.lang.String[]) - */ - public void deleteAuthorities(String[] authorities) - throws RemoteException, AccessControlFault - { - for (String authority : authorities) - { - this.authorityService.deleteAuthority(authority); - } - } - - /** - * Get all authorities that match the filter - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getAllAuthorities(org.alfresco.repo.webservice.accesscontrol.AuthorityFilter) - */ - public String[] getAllAuthorities(AuthorityFilter filter) - throws RemoteException, AccessControlFault - { - List result = new ArrayList(10); - - AuthorityType authorityType = AuthorityType.valueOf(filter.getAuthorityType()); - if (filter.isRootOnly() == true) - { - result.addAll(this.authorityService.getAllRootAuthorities(authorityType)); - } - else - { - result.addAll(this.authorityService.getAllAuthorities(authorityType)); - } - - return (String[])result.toArray(new String[result.size()]); - } - - /** - * Gets all the authorities that the current user belongs to - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getAuthorities() - */ - public String[] getAuthorities() - throws RemoteException, AccessControlFault - { - Set result = this.authorityService.getAuthorities(); - return (String[])result.toArray(new String[result.size()]); - } - - /** - * Gets all the child authorities of a given authority, taking into account a filter - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getChildAuthorities(java.lang.String, org.alfresco.repo.webservice.accesscontrol.SiblingAuthorityFilter) - */ - public String[] getChildAuthorities(String authority, SiblingAuthorityFilter filter) - throws RemoteException, AccessControlFault - { - AuthorityType authorityType = AuthorityType.valueOf(filter.getAuthorityType()); - Set result = this.authorityService.getContainedAuthorities(authorityType, authority, filter.isImmediate()); - return (String[])result.toArray(new String[result.size()]); - } - - /** - * Gets all the parent authorities of a given authority, taking into account a filter - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#getParentAuthorities(java.lang.String, org.alfresco.repo.webservice.accesscontrol.SiblingAuthorityFilter) - */ - public String[] getParentAuthorities(String authority, SiblingAuthorityFilter filter) - throws RemoteException, AccessControlFault - { - AuthorityType authorityType = AuthorityType.valueOf(filter.getAuthorityType()); - Set result = this.authorityService.getContainingAuthorities(authorityType, authority, filter.isImmediate()); - return (String[])result.toArray(new String[result.size()]); - } - - /** - * Remove a child authority - * - * @see org.alfresco.repo.webservice.accesscontrol.AccessControlServiceSoapPort#removeChildAuthorities(java.lang.String, java.lang.String[]) - */ - public void removeChildAuthorities(String parentAuthority, String[] authorities) - throws RemoteException, AccessControlFault - { - for (String authority : authorities) - { - this.authorityService.removeAuthority(parentAuthority, authority); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/action/ActionWebService.java b/source/java/org/alfresco/repo/webservice/action/ActionWebService.java deleted file mode 100644 index 0a047e8cc9..0000000000 --- a/source/java/org/alfresco/repo/webservice/action/ActionWebService.java +++ /dev/null @@ -1,1164 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.action; - -import java.io.Serializable; -import java.rmi.RemoteException; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import org.alfresco.repo.action.ActionConditionImpl; -import org.alfresco.repo.action.ActionImpl; -import org.alfresco.repo.action.CompositeActionImpl; -import org.alfresco.repo.action.executer.ActionExecuter; -import org.alfresco.repo.action.executer.CompositeActionExecuter; -import org.alfresco.repo.transaction.TransactionServiceImpl; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.service.cmr.action.Action; -import org.alfresco.service.cmr.action.ActionCondition; -import org.alfresco.service.cmr.action.ActionConditionDefinition; -import org.alfresco.service.cmr.action.ActionDefinition; -import org.alfresco.service.cmr.action.ActionService; -import org.alfresco.service.cmr.action.CompositeAction; -import org.alfresco.service.cmr.action.ParameterDefinition; -import org.alfresco.service.cmr.action.ParameterizedItem; -import org.alfresco.service.cmr.action.ParameterizedItemDefinition; -import org.alfresco.service.cmr.dictionary.DataTypeDefinition; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; -import org.alfresco.service.cmr.rule.Rule; -import org.alfresco.service.cmr.rule.RuleService; -import org.alfresco.service.cmr.rule.RuleType; -import org.alfresco.util.GUID; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Action web service implementation - * - * @author Roy Wetherall - */ -public class ActionWebService extends AbstractWebService implements ActionServiceSoapPort -{ - /** Log */ - private static Log logger = LogFactory.getLog(ActionWebService.class); - - /** The action service */ - private ActionService actionService; - - /** The rule service */ - private RuleService ruleService; - - /** The dictionary service */ - private DictionaryService dictionaryService; - - /** The transaction service */ - private TransactionServiceImpl transactionService; - - /** - * Set the action service - * - * @param actionService the action service - */ - public void setActionService(ActionService actionService) - { - this.actionService = actionService; - } - - /** - * Set the rule service - * - * @param ruleService the rule service - */ - public void setRuleService(RuleService ruleService) - { - this.ruleService = ruleService; - } - - /** - * Set the dictionary service - * - * @param dictionaryService the dictionary service - */ - public void setDictionaryService(DictionaryService dictionaryService) - { - this.dictionaryService = dictionaryService; - } - - /** - * Sets the transaction service - * - * @param transactionService the transaction service - */ - public void setTransactionService(TransactionServiceImpl transactionService) - { - this.transactionService = transactionService; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getConditionDefinitions() - */ - public ActionItemDefinition[] getConditionDefinitions() throws RemoteException, - ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ActionItemDefinition[] execute() throws Exception - { - return getConditionDefintionsImpl(); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @return - * @throws RemoteException - */ - private ActionItemDefinition[] getConditionDefintionsImpl() throws RemoteException - { - // Get the action condition defintions from the action service - List definitions = this.actionService.getActionConditionDefinitions(); - - // Marshal the results into an array of action item types - ActionItemDefinition[] result = new ActionItemDefinition[definitions.size()]; - int index = 0; - for (ActionConditionDefinition definition : definitions) - { - result[index] = convertToActionItemDefintion(definition, ActionItemDefinitionType.condition); - index++; - } - - return result; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getActionDefinitions() - */ - public ActionItemDefinition[] getActionDefinitions() throws RemoteException, - ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ActionItemDefinition[] execute() throws Exception - { - return getActionDefinitionsImpl(); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @return - * @throws RemoteException - */ - private ActionItemDefinition[] getActionDefinitionsImpl() throws RemoteException - { - // Get the action defintions from the action service - List definitions = this.actionService.getActionDefinitions(); - - // Marshal the results into an array of action item types - ActionItemDefinition[] result = new ActionItemDefinition[definitions.size()]; - int index = 0; - for (ActionDefinition definition : definitions) - { - result[index] = convertToActionItemDefintion(definition, ActionItemDefinitionType.action); - index++; - } - - return result; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getActionItemDefinition(java.lang.String, org.alfresco.repo.webservice.action.ActionItemDefinitionType) - */ - public ActionItemDefinition getActionItemDefinition(final String name, final ActionItemDefinitionType definitionType) throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ActionItemDefinition execute() throws Exception - { - return getActionItemDefinitionImpl(name, definitionType); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @param name - * @param definitionType - * @return - * @throws RemoteException - * @throws ActionFault - */ - public ActionItemDefinition getActionItemDefinitionImpl(String name, ActionItemDefinitionType definitionType) throws RemoteException, ActionFault - { - ActionItemDefinition result = null; - - if (definitionType.equals(ActionItemDefinitionType.action) == true) - { - ActionDefinition actionDefinition = this.actionService.getActionDefinition(name); - if (actionDefinition != null) - { - result = convertToActionItemDefintion(actionDefinition, definitionType); - } - } - else - { - ActionConditionDefinition conditionDefinition = this.actionService.getActionConditionDefinition(name); - if (conditionDefinition != null) - { - result = convertToActionItemDefintion(conditionDefinition, definitionType); - } - } - - return result; - } - - /** - * Marshal the parameterized item defintion into a action item defition object. - * - * @param definition - * @param type - * @return - */ - private ActionItemDefinition convertToActionItemDefintion(ParameterizedItemDefinition definition, ActionItemDefinitionType type) - { - // Create action item defintion - ActionItemDefinition actionItemType = new ActionItemDefinition(); - actionItemType.setName(definition.getName()); - actionItemType.setType(type); - actionItemType.setTitle(definition.getTitle()); - actionItemType.setDescription(definition.getDescription()); - actionItemType.setAdHocPropertiesAllowed(definition.getAdhocPropertiesAllowed()); - - // Marshal the paremeter definitions - List params = definition.getParameterDefinitions(); - org.alfresco.repo.webservice.action.ParameterDefinition[] parameterDefinitions = new org.alfresco.repo.webservice.action.ParameterDefinition[params.size()]; - int index = 0; - for (ParameterDefinition paramDef : params) - { - org.alfresco.repo.webservice.action.ParameterDefinition parameterDefinition = new org.alfresco.repo.webservice.action.ParameterDefinition( - paramDef.getName(), - paramDef.getType().toString(), - paramDef.isMandatory(), - paramDef.getDisplayLabel()); - parameterDefinitions[index] = parameterDefinition; - index ++; - } - actionItemType.setParameterDefinition(parameterDefinitions); - - return actionItemType; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getRuleTypes() - */ - public org.alfresco.repo.webservice.action.RuleType[] getRuleTypes() throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.RuleType[] execute() throws Exception - { - return getRuleTypesImpl(); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - public org.alfresco.repo.webservice.action.RuleType[] getRuleTypesImpl() throws RemoteException, ActionFault - { - // Get the list of rule types - List ruleTypes = this.ruleService.getRuleTypes(); - - // Marshal the rule types into an array - org.alfresco.repo.webservice.action.RuleType[] results = new org.alfresco.repo.webservice.action.RuleType[ruleTypes.size()]; - int index = 0; - for (RuleType ruleType : ruleTypes) - { - org.alfresco.repo.webservice.action.RuleType webServiceRuleType = new org.alfresco.repo.webservice.action.RuleType( - ruleType.getName(), - ruleType.getDisplayLabel()); - results[index] = webServiceRuleType; - index ++; - } - - return results; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getRuleType(java.lang.String) - */ - public org.alfresco.repo.webservice.action.RuleType getRuleType(final String name) throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.RuleType execute() throws Exception - { - return getRuleTypeImpl(name); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - public org.alfresco.repo.webservice.action.RuleType getRuleTypeImpl(String name) throws RemoteException, ActionFault - { - org.alfresco.repo.webservice.action.RuleType result = null; - - RuleType ruleType = this.ruleService.getRuleType(name); - if (ruleType != null) - { - result = new org.alfresco.repo.webservice.action.RuleType(ruleType.getName(), ruleType.getDisplayLabel()); - } - - return result; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getActions(org.alfresco.repo.webservice.types.Reference, java.lang.String[]) - */ - public org.alfresco.repo.webservice.action.Action[] getActions(final Reference reference, final ActionFilter filter) throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.Action[] execute() throws Exception - { - return getActionsImpl(reference, filter); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - private org.alfresco.repo.webservice.action.Action[] getActionsImpl(Reference reference, ActionFilter filter) throws RemoteException, ActionFault - { - // Get the actions - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - List actions = this.actionService.getActions(nodeRef); - - org.alfresco.repo.webservice.action.Action[] webServiceActions = new org.alfresco.repo.webservice.action.Action[actions.size()]; - - // Filter the results - if (filter != null) - { - // TODO implement the filters - } - - // Marshal the results - int index = 0; - for (Action action : actions) - { - webServiceActions[index] = convertToWebServiceAction(action); - index++; - } - - return webServiceActions; - } - - private org.alfresco.repo.webservice.action.Action convertToWebServiceAction(Action action) - { - // Get the parameters into a named value array - NamedValue[] namedValues = convertParametersToNamedValues(action); - - // Get the conditions - List conditions = action.getActionConditions(); - Condition[] webServiceConditions = new Condition[conditions.size()]; - int index2 = 0; - for (ActionCondition condition : conditions) - { - webServiceConditions[index2] = convertToWebServiceCondition(condition); - index2++; - } - - // Get the compenstaing action - Action compensatingAction = action.getCompensatingAction(); - org.alfresco.repo.webservice.action.Action webServiceCompensatingAction = null; - if (compensatingAction != null) - { - webServiceCompensatingAction = convertToWebServiceAction(compensatingAction); - } - - // Sort out any sub-actions - org.alfresco.repo.webservice.action.Action[] childWebServiceActions = null; - if (action instanceof CompositeAction) - { - List childActions = ((CompositeAction)action).getActions(); - childWebServiceActions = new org.alfresco.repo.webservice.action.Action[childActions.size()]; - int index3 = 0; - for (Action childAction : childActions) - { - childWebServiceActions[index3] = convertToWebServiceAction(childAction); - index3 ++; - } - } - - // Create the web service action object - org.alfresco.repo.webservice.action.Action webServiceAction = new org.alfresco.repo.webservice.action.Action( - Utils.convertToReference(this.nodeService, this.namespaceService, action.getNodeRef()), - action.getId(), - action.getActionDefinitionName(), - action.getTitle(), - action.getDescription(), - namedValues, - webServiceConditions, - webServiceCompensatingAction, - childWebServiceActions); - - return webServiceAction; - } - - /** - * - * @param item - * @return - */ - private NamedValue[] convertParametersToNamedValues(ParameterizedItem item) - { - NamedValue[] namedValues = null; - if (item != null) - { - Map params = item.getParameterValues(); - namedValues = new NamedValue[params.size()]; - int index = 0; - for (Map.Entry entry : params.entrySet()) - { - String value = null; - try - { - value = DefaultTypeConverter.INSTANCE.convert(String.class, entry.getValue()); - } - catch (Throwable exception) - { - value = entry.getValue().toString(); - } - NamedValue namedValue = new NamedValue(); - namedValue.setName(entry.getKey()); - namedValue.setIsMultiValue(false); - namedValue.setValue(value); - namedValues[index] = namedValue; - index++; - } - } - return namedValues; - } - - /** - * - * @param condition - * @return - */ - private Condition convertToWebServiceCondition(ActionCondition condition) - { - // Get the parameter values as an array of names values - NamedValue[] namedValues = convertParametersToNamedValues(condition); - - Condition webServiceCondition = new Condition( - condition.getId(), - condition.getActionConditionDefinitionName(), - condition.getInvertCondition(), - namedValues); - - return webServiceCondition; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#saveActions(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.action.Action[]) - */ - public org.alfresco.repo.webservice.action.Action[] saveActions( - final Reference reference, - final org.alfresco.repo.webservice.action.Action[] webServiceActions) throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.Action[] execute() throws Exception - { - return saveActionsImpl(reference, webServiceActions); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @param reference - * @param webServiceActions - * @return - * @throws RemoteException - * @throws ActionFault - */ - private org.alfresco.repo.webservice.action.Action[] saveActionsImpl( - Reference reference, - org.alfresco.repo.webservice.action.Action[] webServiceActions) throws RemoteException, ActionFault - { - // Get the node reference - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - - // Create the result array - org.alfresco.repo.webservice.action.Action[] results = new org.alfresco.repo.webservice.action.Action[webServiceActions.length]; - - int index = 0; - for (org.alfresco.repo.webservice.action.Action webServiceAction : webServiceActions) - { - // Convert to a server action object - Action action = convertToAction(webServiceAction); - - // Save the action - this.actionService.saveAction(nodeRef, action); - - // Add the updated action to the results - results[index] = convertToWebServiceAction(action); - index++; - } - - return results; - } - - /** - * Convert a web service action object into a repository action object. - * - * @param webServiceAction the web service action object - * @return the repository action object - */ - private Action convertToAction(org.alfresco.repo.webservice.action.Action webServiceAction) - { - // If the id is null then generate one - String id = webServiceAction.getId(); - if (id == null || id.length() == 0) - { - id = GUID.generate(); - } - - // Try and get the action node reference - NodeRef actionNodeRef = null; - Reference actionReference = webServiceAction.getActionReference(); - if (actionReference != null) - { - actionNodeRef = Utils.convertToNodeRef(actionReference, this.nodeService, this.searchService, this.namespaceService); - } - - // Create the action (or composite action) - ActionImpl action = null; - String actionDefinitionName = webServiceAction.getActionName(); - if (CompositeActionExecuter.NAME.equals(actionDefinitionName) == true) - { - action = new CompositeActionImpl(actionNodeRef, id); - } - else - { - action = new ActionImpl(actionNodeRef, id, actionDefinitionName); - } - - // Set some of the action's details - action.setTitle(webServiceAction.getTitle()); - action.setDescription(webServiceAction.getDescription()); - - // Set the parameters - NamedValue[] namedValues = webServiceAction.getParameters(); - if (namedValues != null) - { - for (NamedValue namedValue : namedValues) - { - // Get the type of the property - DataTypeDefinition propertyType = null; - ActionDefinition actionDefintion = this.actionService.getActionDefinition(action.getActionDefinitionName()); - ParameterDefinition propertyDefintion = actionDefintion.getParameterDefintion(namedValue.getName()); - if (propertyDefintion != null) - { - propertyType = this.dictionaryService.getDataType(propertyDefintion.getType()); - } - - // Convert the value into the correct type - Serializable value = null; - if (propertyType != null) - { - value = (Serializable)DefaultTypeConverter.INSTANCE.convert(propertyType, namedValue.getValue()); - } - else - { - value = namedValue.getValue(); - } - - // Set the parameter - action.setParameterValue(namedValue.getName(), value); - } - } - - // Set the conditions - Condition[] webServiceConditions = webServiceAction.getConditions(); - if (webServiceConditions != null) - { - for (Condition webServiceCondition : webServiceConditions) - { - action.addActionCondition(convertToActionCondition(webServiceCondition)); - } - } - - // Set the compensating action - org.alfresco.repo.webservice.action.Action webServiceCompensatingAction = webServiceAction.getCompensatingAction(); - if (webServiceCompensatingAction != null) - { - Action compensatingAction = convertToAction(webServiceCompensatingAction); - action.setCompensatingAction(compensatingAction); - } - - // Set the child actions (if we are dealing with a composite action) - if (CompositeActionExecuter.NAME.equals(actionDefinitionName) == true) - { - org.alfresco.repo.webservice.action.Action[] webServiceChildActions = webServiceAction.getActions(); - if (webServiceChildActions != null) - { - for (org.alfresco.repo.webservice.action.Action webServiceChildAction : webServiceChildActions) - { - Action childAction = convertToAction(webServiceChildAction); - ((CompositeAction)action).addAction(childAction); - } - } - } - - return action; - } - - /** - * - * @param webServiceCondition - * @return - */ - private ActionCondition convertToActionCondition(Condition webServiceCondition) - { - // If the id is null then generate one - String id = webServiceCondition.getId(); - if (id == null || id.length() == 0) - { - id = GUID.generate(); - } - - // Create the action condition - ActionCondition actionCondition = new ActionConditionImpl(id, webServiceCondition.getConditionName()); - - // Set the details of the condition - actionCondition.setInvertCondition(webServiceCondition.isInvertCondition()); - - // Set the condition parameters - NamedValue[] namedValues = webServiceCondition.getParameters(); - if (namedValues != null) - { - for (NamedValue namedValue : namedValues) - { - // Get the type of the property - DataTypeDefinition propertyType = null; - ActionConditionDefinition actionConditionDefintion = this.actionService.getActionConditionDefinition(actionCondition.getActionConditionDefinitionName()); - ParameterDefinition propertyDefintion = actionConditionDefintion.getParameterDefintion(namedValue.getName()); - if (propertyDefintion != null) - { - propertyType = this.dictionaryService.getDataType(propertyDefintion.getType()); - } - - // Convert the value into the correct type - Serializable value = null; - if (propertyType != null) - { - value = (Serializable)DefaultTypeConverter.INSTANCE.convert(propertyType, namedValue.getValue()); - } - else - { - value = namedValue.getValue(); - } - - // Set the parameter - actionCondition.setParameterValue(namedValue.getName(), value); - } - } - - return actionCondition; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#removeActions(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.action.Action[]) - */ - public void removeActions(final Reference reference, final org.alfresco.repo.webservice.action.Action[] webServiceActions) - throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Object execute() throws Exception - { - removeActionsImpl(reference, webServiceActions); - return null; - } - }; - transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - private void removeActionsImpl(Reference reference, org.alfresco.repo.webservice.action.Action[] webServiceActions) - throws RemoteException, ActionFault - { - // Get the node reference - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - - if (webServiceActions == null) - { - // Remove all the actions - this.actionService.removeAllActions(nodeRef); - } - else - { - for (org.alfresco.repo.webservice.action.Action webServiceAction : webServiceActions) - { - Action action = convertToAction(webServiceAction); - this.actionService.removeAction(nodeRef, action); - } - } - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#executeActions(org.alfresco.repo.webservice.types.Predicate, org.alfresco.repo.webservice.action.Action[]) - */ - public ActionExecutionResult[] executeActions(final Predicate predicate, final org.alfresco.repo.webservice.action.Action[] webServiceActions) throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public ActionExecutionResult[] execute() throws Exception - { - return executeActionsImpl(predicate, webServiceActions); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Execute actions implementation - * - * @param predicate - * @param webServiceActions - * @return - * @throws RemoteException - * @throws ActionFault - */ - public ActionExecutionResult[] executeActionsImpl(Predicate predicate, org.alfresco.repo.webservice.action.Action[] webServiceActions) throws RemoteException, ActionFault - { - List results = new ArrayList(10); - - // Resolve the predicate to a list of nodes - List nodeRefs = Utils.resolvePredicate(predicate, this.nodeService, this.searchService, this.namespaceService); - for (NodeRef nodeRef : nodeRefs) - { - // Create the execution result object and set the action reference - ActionExecutionResult executionResult = new ActionExecutionResult(); - executionResult.setReference(Utils.convertToReference(this.nodeService, this.namespaceService, nodeRef)); - - // Tyr and execute the actions - List executedActions = new ArrayList(10); - for (org.alfresco.repo.webservice.action.Action webServiceAction : webServiceActions) - { - // Get the repository action object - Action action = convertToAction(webServiceAction); - - // TODO what about condition inversion - if (this.actionService.evaluateAction(action, nodeRef) == true) - { - // Execute the action (now that we know the conditions have been met) - this.actionService.executeAction(action, nodeRef, false); - - // Add the result value to the executed action for return to the client - Serializable result = action.getParameterValue(ActionExecuter.PARAM_RESULT); - if (result != null) - { - // Convert the result to a string value - String convertedValue = DefaultTypeConverter.INSTANCE.convert(String.class, result); - NamedValue convertedNameValue = new NamedValue(ActionExecuter.PARAM_RESULT, false, convertedValue, null); - - // Append the new value to the current parameter array - NamedValue[] currentValues = webServiceAction.getParameters(); - NamedValue[] updatedValues = new NamedValue[currentValues.length+1]; - int index = 0; - for (NamedValue value : currentValues) - { - updatedValues[index] = value; - index ++; - } - updatedValues[index] = convertedNameValue; - - // Set the updated parameter values - webServiceAction.setParameters(updatedValues); - - } - - // Add the executed action to the result list - executedActions.add(webServiceAction); - } - } - - // Set the executed actions on the execution result object - org.alfresco.repo.webservice.action.Action[] executedWebServiceActions = (org.alfresco.repo.webservice.action.Action[])executedActions.toArray(new org.alfresco.repo.webservice.action.Action[executedActions.size()]); - executionResult.setActions(executedWebServiceActions); - - // Add the execution object to the result list - results.add(executionResult); - } - return (ActionExecutionResult[])results.toArray(new ActionExecutionResult[results.size()]); - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#getRules(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.action.RuleFilter) - */ - public org.alfresco.repo.webservice.action.Rule[] getRules(final Reference reference, final RuleFilter ruleFilter) - throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.Rule[] execute() throws Exception - { - return getRulesImpl(reference, ruleFilter); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - private org.alfresco.repo.webservice.action.Rule[] getRulesImpl(Reference reference, RuleFilter ruleFilter) - throws RemoteException, ActionFault - { - // Get the node reference - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - - // Get the rules associtated with the node reference - List rules = this.ruleService.getRules(nodeRef); - - // Filter the results based on the rule filter passed - // TODO - - // Marshal the results - org.alfresco.repo.webservice.action.Rule[] webServiceRules = new org.alfresco.repo.webservice.action.Rule[rules.size()]; - int index = 0; - for (Rule rule : rules) - { - webServiceRules[index] = convertToWebServiceRule(rule); - index ++; - } - - - return webServiceRules; - } - - private org.alfresco.repo.webservice.action.Rule convertToWebServiceRule(Rule rule) - { - Reference owningReference = null; - NodeRef owningNodeRef = this.ruleService.getOwningNodeRef(rule); - if (owningNodeRef != null) - { - owningReference = Utils.convertToReference(this.nodeService, this.namespaceService, owningNodeRef); - } - - // Create the web service rule object - org.alfresco.repo.webservice.action.Rule webServiceRule = new org.alfresco.repo.webservice.action.Rule( - Utils.convertToReference(this.nodeService, this.namespaceService, rule.getNodeRef()), - owningReference, - rule.getRuleTypes().toArray(new String[rule.getRuleTypes().size()]), - rule.getTitle(), - rule.getDescription(), - rule.getExecuteAsynchronously(), - convertToWebServiceAction(rule.getAction())); - - return webServiceRule; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#saveRules(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.action.Rule[]) - */ - public org.alfresco.repo.webservice.action.Rule[] saveRules(final Reference reference, final org.alfresco.repo.webservice.action.Rule[] webServiceRules) - throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public org.alfresco.repo.webservice.action.Rule[] execute() throws Exception - { - return saveRulesImpl(reference, webServiceRules); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - exception.printStackTrace(); - - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - private org.alfresco.repo.webservice.action.Rule[] saveRulesImpl(Reference reference, org.alfresco.repo.webservice.action.Rule[] webServiceRules) - throws RemoteException, ActionFault - { - // Get the node reference - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - - // Create the result array - org.alfresco.repo.webservice.action.Rule[] results = new org.alfresco.repo.webservice.action.Rule[webServiceRules.length]; - - int index = 0; - for (org.alfresco.repo.webservice.action.Rule webServiceRule : webServiceRules) - { - // Convert to a server rule object - Rule rule = convertToRule(webServiceRule); - - // Save the rule - this.ruleService.saveRule(nodeRef, rule); - - // Add the updated rule to the results - results[index] = convertToWebServiceRule(rule); - index++; - } - - return results; - } - - /** - * @see org.alfresco.repo.webservice.action.ActionServiceSoapPort#removeRules(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.action.Rule[]) - */ - public void removeRules(final Reference reference, final org.alfresco.repo.webservice.action.Rule[] webServiceRules) - throws RemoteException, ActionFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Object execute() throws Exception - { - removeRulesImpl(reference, webServiceRules); - return null; - } - }; - transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @param reference - * @param webServiceRules - * @throws RemoteException - * @throws ActionFault - */ - public void removeRulesImpl(Reference reference, org.alfresco.repo.webservice.action.Rule[] webServiceRules) - throws RemoteException, ActionFault - { - // Get the node reference - NodeRef nodeRef = Utils.convertToNodeRef(reference, this.nodeService, this.searchService, this.namespaceService); - - if (webServiceRules == null) - { - // Remove all the actions - this.ruleService.removeAllRules(nodeRef); - } - else - { - for (org.alfresco.repo.webservice.action.Rule webServiceRule : webServiceRules) - { - Rule rule = convertToRule(webServiceRule); - this.ruleService.removeRule(nodeRef, rule); - } - } - - } - - /** - * - * @param webServiceRule - * @return - */ - private Rule convertToRule(org.alfresco.repo.webservice.action.Rule webServiceRule) - { - NodeRef ruleNodeRef = null; - if (webServiceRule.getRuleReference() != null) - { - ruleNodeRef = Utils.convertToNodeRef( - webServiceRule.getRuleReference(), - this.nodeService, - this.searchService, - this.namespaceService); - } - - // Get the rule type name - String[] ruleTypes = webServiceRule.getRuleTypes(); - - // Create the rule - Rule rule = new Rule(); - List ruleTypesList = new ArrayList(ruleTypes.length); - for (String ruleType : ruleTypes) - { - ruleTypesList.add(ruleType); - } - rule.setRuleTypes(ruleTypesList); - rule.setNodeRef(ruleNodeRef); - - // Set some of the rules details - rule.setTitle(webServiceRule.getTitle()); - rule.setDescription(webServiceRule.getDescription()); - rule.setExecuteAsynchronously(webServiceRule.isExecuteAsynchronously()); - - // Set the action - Action action = convertToAction(webServiceRule.getAction()); - rule.setAction(action); - - return rule; - } -} diff --git a/source/java/org/alfresco/repo/webservice/administration/AdministrationWebService.java b/source/java/org/alfresco/repo/webservice/administration/AdministrationWebService.java deleted file mode 100644 index 8fdfeccbed..0000000000 --- a/source/java/org/alfresco/repo/webservice/administration/AdministrationWebService.java +++ /dev/null @@ -1,600 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.administration; - -import java.io.Serializable; -import java.rmi.RemoteException; -import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.alfresco.error.AlfrescoRuntimeException; -import org.alfresco.model.ContentModel; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.action.ActionFault; -import org.alfresco.repo.webservice.repository.RepositoryFault; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; -import org.alfresco.service.cmr.security.AuthorityService; -import org.alfresco.service.cmr.security.MutableAuthenticationService; -import org.alfresco.service.cmr.security.PersonService; -import org.alfresco.service.namespace.QName; -import org.alfresco.service.transaction.TransactionService; -import org.apache.axis.MessageContext; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * @author Roy Wetherall - */ -public class AdministrationWebService extends AbstractWebService implements - AdministrationServiceSoapPort -{ - /** Log */ - private static Log logger = LogFactory.getLog(AdministrationWebService.class); - - /** The person service */ - private PersonService personService = null; - - /** - * Indicates whether the user administration methods should manage the authentication - * details, or just the person details. - * - * Set this to true if an 3rd party authentication implementation has been pluged into - * the repository that manages authentication details. - */ - private boolean manageAuthenticationDetails = true; - - /** The authentication service */ - private MutableAuthenticationService authenticationService = null; - - private AuthorityService authorityService; - - /** The transaction service */ - private TransactionService transactionService = null; - - /** A set of ignored properties */ - private static Set ignoredProperties = new HashSet(3); - - /** - * Constructor - */ - public AdministrationWebService() - { - // Set properties to ignore - AdministrationWebService.ignoredProperties.add(ContentModel.PROP_STORE_PROTOCOL); - AdministrationWebService.ignoredProperties.add(ContentModel.PROP_STORE_IDENTIFIER); - AdministrationWebService.ignoredProperties.add(ContentModel.PROP_NODE_UUID); - } - - /** - * Set the flag that indicates whether this service should manage user authentication details as - * well as person details. - * - * @param manageAuthenticationDetails true if authentication details are managed, false otherwise - */ - public void setManageAuthenticationDetails(boolean manageAuthenticationDetails) - { - this.manageAuthenticationDetails = manageAuthenticationDetails; - } - - /** - * Set the transaction service - * - * @param transactionService the transaction service - */ - public void setTransactionService(TransactionService transactionService) - { - this.transactionService = transactionService; - } - - /** - * Set the person service - * - * @param personService sets the person service - */ - public void setPersonService(PersonService personService) - { - this.personService = personService; - } - - /** - * Set the authentication service - * - * @param authenticationService the authentication service - */ - public void setAuthenticationService(MutableAuthenticationService authenticationService) - { - this.authenticationService = authenticationService; - } - - /** - * Set the authority service used to determine admin rights. - * - * @param authorityService the service implementation - */ - public void setAuthorityService(AuthorityService authorityService) - { - this.authorityService = authorityService; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#queryUsers(org.alfresco.repo.webservice.administration.UserFilter) - */ - public UserQueryResults queryUsers(final UserFilter filter) - throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UserQueryResults execute() throws Exception - { - return queryUsersImpl(filter); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Query users, batch by set size - * - * @param filter used to filter results - * @return user query results, optionally batched - */ - private UserQueryResults queryUsersImpl(UserFilter filter) - { - MessageContext msgContext = MessageContext.getCurrentContext(); - - // Create the query - UserQuery query = new UserQuery(filter); - - // Create a user query session - UserQuerySession userQuerySession = new UserQuerySession(Long.MAX_VALUE, Utils.getBatchSize(msgContext), query); - - // Get the next batch of results - UserQueryResults userQueryResults = userQuerySession.getNextResults(serviceRegistry); - - String querySessionId = userQuerySession.getId(); - // add the session to the cache if there are more results to come - boolean haveMoreResults = userQuerySession.haveMoreResults(); - if (haveMoreResults) - { - querySessionCache.put(querySessionId, userQuerySession); - } - - // Construct the return value - // TODO: http://issues.alfresco.com/browse/AR-1689 - // This looks odd, but I've chosen to be specific about when the ID is set on the return - // results and when it isn't. - UserQueryResults result = new UserQueryResults( - haveMoreResults ? querySessionId : null, - userQueryResults.getUserDetails()); - - // Done - return result; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#fetchMoreUsers(java.lang.String) - */ - public UserQueryResults fetchMoreUsers(final String querySession) - throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UserQueryResults execute() throws Exception - { - return fetchMoreUsersImpl(querySession); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * - * @param querySessionId - * @return - */ - private UserQueryResults fetchMoreUsersImpl(String querySessionId) throws RepositoryFault - { - UserQuerySession session = null; - try - { - session = (UserQuerySession) querySessionCache.get(querySessionId); - } - catch (ClassCastException e) - { - if (logger.isDebugEnabled()) - { - logger.debug("Query session was not generated by the AdministrationWebService: " + querySessionId); - } - throw new RepositoryFault( - 4, - "querySession with id '" + querySessionId + "' is invalid"); - } - - UserQueryResults queryResult = null; - if (session != null) - { - queryResult = session.getNextResults(serviceRegistry); - if (!session.haveMoreResults()) - { - this.querySessionCache.remove(querySessionId); - } - else - { - // Update the cache instance so that it can trigger replication as required - querySessionCache.put(querySessionId, session); - } - } - - return queryResult; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#getUser(java.lang.String) - */ - public UserDetails getUser(final String userName) throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UserDetails execute() throws Exception - { - return getUserImpl(userName); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Get the user details - * - * @param userName the user name - * @return the user details object - * @throws RemoteException - * @throws AdministrationFault - */ - private UserDetails getUserImpl(String userName) - { - NodeService nodeService = serviceRegistry.getNodeService(); - UserDetails userDetails = null; - - if (this.personService.personExists(userName) == true) - { - NodeRef nodeRef = this.personService.getPerson(userName); - userDetails = createUserDetails(nodeService, userName, nodeRef); - } - else - { - // Throw an exception to indicate that the user does not exist - throw new AlfrescoRuntimeException(MessageFormat.format("The user with name {0} does not exist.", new Object[]{userName})); - } - - return userDetails; - } - - /** - * Given a valid person node reference will create a user details object - * - * @param nodeRef the node reference - * @return the user details object populated with the appropriate property values - */ - /* package */ static UserDetails createUserDetails(NodeService nodeService, String userName, NodeRef nodeRef) - { - // Create the user details object - UserDetails userDetails = new UserDetails(); - - // Set the user name - userDetails.setUserName(userName); - - // Set the various property values - Map properties = nodeService.getProperties(nodeRef); - List namedValues = new ArrayList(properties.size()); - for (Map.Entry entry : properties.entrySet()) - { - if (AdministrationWebService.ignoredProperties.contains(entry.getKey()) == false) - { - String value = null; - try - { - value = DefaultTypeConverter.INSTANCE.convert(String.class, entry.getValue()); - } - catch (Throwable exception) - { - value = entry.getValue().toString(); - } - NamedValue namedValue = new NamedValue(); - namedValue.setName(entry.getKey().toString()); - namedValue.setIsMultiValue(false); - namedValue.setValue(value); - namedValues.add(namedValue); - } - } - userDetails.setProperties((NamedValue[])namedValues.toArray(new NamedValue[namedValues.size()])); - - return userDetails; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#createUsers(org.alfresco.repo.webservice.administration.NewUserDetails[]) - */ - public UserDetails[] createUsers(final NewUserDetails[] newUsers) throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UserDetails[] execute() throws Exception - { - return createUsersImpl(newUsers); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Create the new users - * - * @param newUsers the new users detail - * @return the details of the created users - * @throws RemoteException - * @throws AdministrationFault - */ - private UserDetails[] createUsersImpl(NewUserDetails[] newUsers) - { - NodeService nodeService = serviceRegistry.getNodeService(); - UserDetails[] userDetails = new UserDetails[newUsers.length]; - - int index = 0; - for (NewUserDetails newUser : newUsers) - { - if (this.manageAuthenticationDetails == true) - { - // Create a new authentication - this.authenticationService.createAuthentication(newUser.getUserName(), newUser.getPassword().toCharArray()); - } - - // Create a new person - Map properties = new HashMap(7); - properties.put(ContentModel.PROP_USERNAME, newUser.getUserName()); - for (NamedValue namedValue : newUser.getProperties()) - { - properties.put(QName.createQName(namedValue.getName()), namedValue.getValue()); - } - NodeRef personNodeRef = this.personService.createPerson(properties); - - // Add the details to the result - userDetails[index] = createUserDetails(nodeService, newUser.getUserName(), personNodeRef); - index++; - } - - return userDetails; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#updateUsers(org.alfresco.repo.webservice.administration.UserDetails[]) - */ - public UserDetails[] updateUsers(final UserDetails[] users) throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UserDetails[] execute() throws Exception - { - return updateUsersImpl(users); - } - }; - return transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Update the users details - * - * @param users the user details to update - * @return the updated user details - */ - private UserDetails[] updateUsersImpl(UserDetails[] users) - { - NodeService nodeService = serviceRegistry.getNodeService(); - UserDetails[] userDetails = new UserDetails[users.length]; - - int index = 0; - for (UserDetails user : users) - { - // Build the property map - Map properties = new HashMap(7); - properties.put(ContentModel.PROP_USERNAME, user.getUserName()); - for (NamedValue namedValue : user.getProperties()) - { - properties.put(QName.createQName(namedValue.getName()), namedValue.getValue()); - } - - // Update the properties of the person - this.personService.setPersonProperties(user.getUserName(), properties); - - // Add the details to the result - NodeRef nodeRef = this.personService.getPerson(user.getUserName()); - userDetails[index] = createUserDetails(nodeService, user.getUserName(), nodeRef); - index++; - } - - return userDetails; - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#changePassword(java.lang.String, java.lang.String, java.lang.String) - */ - public void changePassword(final String userName, final String oldPassword, final String newPassword) throws RemoteException, AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Object execute() throws Exception - { - changePasswordImpl(userName, oldPassword, newPassword); - return null; - } - }; - transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Change the current password of the user - * - * @param userName the user name - * @param oldPassword the old (current) password - * @param newPassword the new password - */ - private void changePasswordImpl(String userName, String oldPassword, String newPassword) - { - if (this.manageAuthenticationDetails == true) - { - // Update the authentication details - if (this.authorityService.hasAdminAuthority() == true) - { - this.authenticationService.setAuthentication(userName, newPassword.toCharArray()); - } - else - { - this.authenticationService.updateAuthentication(userName, oldPassword.toCharArray(), newPassword.toCharArray()); - } - } - else - { - throw new RuntimeException("Web service has been configured so that user authenticaiton details are not managed."); - } - } - - /** - * @see org.alfresco.repo.webservice.administration.AdministrationServiceSoapPort#deleteUsers(java.lang.String[]) - */ - public void deleteUsers(final String[] userNames) throws RemoteException, - AdministrationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Object execute() throws Exception - { - deleteUsersImpl(userNames); - return null; - } - }; - transactionService.getRetryingTransactionHelper().doInTransaction(callback); - } - catch (Throwable exception) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", exception); - } - - throw new ActionFault(0, exception.getMessage()); - } - } - - /** - * Delete users - * - * @param userNames the names of the users to delete - */ - private void deleteUsersImpl(String[] userNames) - { - for (String userName : userNames) - { - this.personService.deletePerson(userName); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/administration/UserQuery.java b/source/java/org/alfresco/repo/webservice/administration/UserQuery.java deleted file mode 100644 index e1ef291e73..0000000000 --- a/source/java/org/alfresco/repo/webservice/administration/UserQuery.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.administration; - -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - -import org.alfresco.model.ContentModel; -import org.alfresco.repo.webservice.AbstractQuery; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.security.PersonService; - -/** - * A query to retrieve normal node associations. - * - * @author Derek Hulley - * @since 2.1 - */ -public class UserQuery extends AbstractQuery -{ - private static final long serialVersionUID = -672399618512462040L; - - private UserFilter userFilter; - - /** - * @param userFilter - * The user filter - */ - public UserQuery(UserFilter userFilter) - { - this.userFilter = userFilter; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(128); - sb.append("AssociationQuery") - .append("[ userFilter=").append(userFilter.getUserName()) - .append("]"); - return sb.toString(); - } - - /** - * {@inheritDoc} - */ - public UserQueryResults execute(ServiceRegistry serviceRegistry) - { - PersonService personService = serviceRegistry.getPersonService(); - NodeService nodeService = serviceRegistry.getNodeService(); - - Set nodeRefs = personService.getAllPeople(); - - // Filter the results - List filteredNodeRefs = null; - if (userFilter != null && userFilter.getUserName() != null && userFilter.getUserName().length() != 0) - { - String userNameFilter = userFilter.getUserName(); - - filteredNodeRefs = new ArrayList(nodeRefs.size()); - for (NodeRef nodeRef : nodeRefs) - { - String userName = (String) nodeService.getProperty(nodeRef, ContentModel.PROP_USERNAME); - if (userName.matches(userNameFilter) == true) - { - filteredNodeRefs.add(nodeRef); - } - } - } - else - { - filteredNodeRefs = new ArrayList(nodeRefs); - } - - UserDetails[] results = new UserDetails[filteredNodeRefs.size()]; - int index = 0; - for (NodeRef nodeRef : filteredNodeRefs) - { - String userName = (String) nodeService.getProperty(nodeRef, ContentModel.PROP_USERNAME); - results[index] = AdministrationWebService.createUserDetails(nodeService, userName, nodeRef); - index++; - } - - UserQueryResults queryResults = new UserQueryResults(null, results); - - // Done - return queryResults; - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/administration/UserQuerySession.java b/source/java/org/alfresco/repo/webservice/administration/UserQuerySession.java deleted file mode 100644 index da0d8ace35..0000000000 --- a/source/java/org/alfresco/repo/webservice/administration/UserQuerySession.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.administration; - -import org.alfresco.repo.webservice.AbstractQuerySession; -import org.alfresco.repo.webservice.ServerQuery; -import org.alfresco.service.ServiceRegistry; - -/** - * A session for managing user-related queries. - * - * @author Derek Hulley - * @since 2.1 - */ -public class UserQuerySession extends AbstractQuerySession -{ - private static final long serialVersionUID = 1823253197962982642L; - - public UserQuerySession(long maxResults, long batchSize, ServerQuery query) - { - super(maxResults, batchSize, query); - } - - @Override - protected UserDetails[] makeArray(int size) - { - return new UserDetails[size]; - } - - public UserQueryResults getNextResults(ServiceRegistry serviceRegistry) - { - UserQueryResults queryResults = getQueryResults(serviceRegistry); - UserDetails[] allRows = queryResults.getUserDetails(); - UserDetails[] batchedRows = getNextResults(allRows); - // Build the user query results - UserQueryResults batchedResults = new UserQueryResults(); -// batchedResults.setQuerySession(getId()); TODO: http://issues.alfresco.com/browse/AR-1689 - - batchedResults.setUserDetails(batchedRows); - // Done - return batchedResults; - } -} diff --git a/source/java/org/alfresco/repo/webservice/authentication/AuthenticationWebService.java b/source/java/org/alfresco/repo/webservice/authentication/AuthenticationWebService.java deleted file mode 100644 index 362fb846fc..0000000000 --- a/source/java/org/alfresco/repo/webservice/authentication/AuthenticationWebService.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright (C) 2005-2013 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.authentication; - -import java.rmi.RemoteException; - -import org.alfresco.repo.security.authentication.AuthenticationComponent; -import org.alfresco.repo.security.authentication.AuthenticationException; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.service.cmr.security.AuthenticationService; -import org.apache.axis.MessageContext; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Web service implementation of the AuthenticationService. The WSDL for this - * service can be accessed from - * http://localhost:8080/alfresco/wsdl/authentication-service.wsdl - * - * @author gavinc - */ -public class AuthenticationWebService implements AuthenticationServiceSoapPort -{ - private static Log logger = LogFactory.getLog(AuthenticationWebService.class); - - private AuthenticationService authenticationService; - - private AuthenticationComponent authenticationComponent; - - /** - * Sets the AuthenticationService instance to use - * - * @param authenticationSvc - * The AuthenticationService - */ - public void setAuthenticationService(AuthenticationService authenticationSvc) - { - this.authenticationService = authenticationSvc; - } - - /** - * Set the authentication component - * - * @param authenticationComponent - */ - public void setAuthenticationComponent(AuthenticationComponent authenticationComponent) - { - this.authenticationComponent = authenticationComponent; - } - - /** - * @see org.alfresco.repo.webservice.authentication.AuthenticationServiceSoapPort#startSession(java.lang.String, - * java.lang.String) - */ - public AuthenticationResult startSession(final String username, final String password) - throws RemoteException, AuthenticationFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public AuthenticationResult execute() throws Throwable - { - authenticationService.authenticate(username, password.toCharArray()); - String ticket = authenticationService.getCurrentTicket(); - - if (logger.isDebugEnabled()) - { - logger.debug("Issued ticket '" + ticket + "' for '" + username + "'"); - } - - return new AuthenticationResult(username, ticket, Utils.getSessionId()); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (AuthenticationException ae) - { - ae.printStackTrace(); - throw new AuthenticationFault(100, ae.getMessage()); - } - catch (Throwable e) - { - e.printStackTrace(); - throw new AuthenticationFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authentication.AuthenticationServiceSoapPort#endSession() - */ - public void endSession(final String ticket) throws RemoteException, AuthenticationFault - { - try - { - if (ticket != null) - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Object execute() throws Throwable - { - authenticationComponent.setSystemUserAsCurrentUser(); - authenticationService.invalidateTicket(ticket); - authenticationService.clearCurrentSecurityContext(); - - if (logger.isDebugEnabled()) - { - logger.debug("Session ended for ticket '" + ticket + "'"); - } - - return null; - } - }; - Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - Utils.invalidateSession(); - } - } - catch (Throwable e) - { - throw new AuthenticationFault(0, e.getMessage()); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/authoring/AuthoringWebService.java b/source/java/org/alfresco/repo/webservice/authoring/AuthoringWebService.java deleted file mode 100644 index 914463c720..0000000000 --- a/source/java/org/alfresco/repo/webservice/authoring/AuthoringWebService.java +++ /dev/null @@ -1,810 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.authoring; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.io.Serializable; -import java.rmi.RemoteException; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.alfresco.model.ContentModel; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.version.VersionModel; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.ContentFormat; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.ParentReference; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.VersionHistory; -import org.alfresco.service.cmr.coci.CheckOutCheckInService; -import org.alfresco.service.cmr.lock.LockService; -import org.alfresco.service.cmr.lock.LockType; -import org.alfresco.service.cmr.repository.ContentWriter; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.version.Version; -import org.alfresco.service.cmr.version.VersionService; -import org.alfresco.service.cmr.version.VersionType; -import org.alfresco.service.namespace.QName; -import org.alfresco.service.transaction.TransactionService; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Web service implementation of the AuthoringService. The WSDL for this service - * can be accessed from - * http://localhost:8080/alfresco/wsdl/authoring-service.wsdl - * - * @author gavinc - */ -public class AuthoringWebService extends AbstractWebService implements - AuthoringServiceSoapPort -{ - /** - * Logger - */ - private static Log logger = LogFactory.getLog(AuthoringWebService.class); - - /** - * The check in check out service - */ - private CheckOutCheckInService cociService; - - /** - * The lock service - */ - private LockService lockService; - - /** - * The version service - */ - private VersionService versionService; - - /** - * The transaction service - */ - private TransactionService transactionService; - - /** - * Sets the CheckInCheckOutService to use - * - * @param cociService - * The CheckInCheckOutService - */ - public void setCheckOutCheckinService(CheckOutCheckInService cociService) - { - this.cociService = cociService; - } - - /** - * Sets the LockService to use - * - * @param lockService the lock service - */ - public void setLockService(LockService lockService) - { - this.lockService = lockService; - } - - /** - * Set the version service - * - * @param versionService the version service - */ - public void setVersionService(VersionService versionService) - { - this.versionService = versionService; - } - - /** - * Set the transaction service - * - * @param transactionService - * the transaction service - */ - public void setTransactionService(TransactionService transactionService) - { - this.transactionService = transactionService; - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#checkout(org.alfresco.repo.webservice.types.Predicate, - * org.alfresco.repo.webservice.types.ParentReference) - */ - public CheckoutResult checkout(final Predicate items, final ParentReference destination) throws RemoteException, - AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public CheckoutResult execute() - { - List nodes = Utils.resolvePredicate(items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - CheckoutResult checkoutResult = new CheckoutResult(); - Reference[] originals = new Reference[nodes.size()]; - Reference[] workingCopies = new Reference[nodes.size()]; - - // get a repository NodeRef for the destination (if - // there is one) - NodeRef destinationRef = null; - if (destination != null) - { - destinationRef = Utils.convertToNodeRef( - destination, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - } - - for (int x = 0; x < nodes.size(); x++) - { - // get the current node - NodeRef original = nodes.get(x); - - // call the appropriate service method depending on - // whether a destination has been provided - NodeRef workingCopy = null; - if (destinationRef != null) - { - workingCopy = AuthoringWebService.this.cociService - .checkout( - original, - destinationRef, - QName.createQName(destination.getAssociationType()), - QName.createQName(destination.getChildName())); - } else - { - workingCopy = AuthoringWebService.this.cociService - .checkout(original); - } - - // store the results - originals[x] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, original); - workingCopies[x] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, workingCopy); - } - - // setup the result object - checkoutResult.setOriginals(originals); - checkoutResult.setWorkingCopies(workingCopies); - - return checkoutResult; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#checkin(org.alfresco.repo.webservice.types.Predicate, - * org.alfresco.repo.webservice.types.NamedValue[], boolean) - */ - public CheckinResult checkin(final Predicate items, - final NamedValue[] comments, final boolean keepCheckedOut) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public CheckinResult execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Map the comments into the expected map - Map mapComments = convertCommnets(comments); - - Reference[] checkedIn = new Reference[nodes.size()]; - List listWorkingCopies = new ArrayList(nodes.size()); - int iIndex = 0; - - // Execute checkin for each node - // TODO should be able to do this as a batch so that all the nodes are versioned together - for (NodeRef node : nodes) - { - // Checkin the node - NodeRef checkedInNode = AuthoringWebService.this.cociService.checkin(node, mapComments, null, keepCheckedOut); - - // Add the results to the array - checkedIn[iIndex] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, checkedInNode); - - // Only return the working copies if the node is keep checked out otherwise the working copies have been deleted - if (keepCheckedOut == true) - { - listWorkingCopies.add(Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, node)); - } - iIndex++; - } - - // Sort out the working copy list - Reference[] workingCopies = listWorkingCopies.toArray(new Reference[listWorkingCopies.size()]); - if (workingCopies == null) - { - workingCopies = new Reference[0]; - } - - // Create the result object - CheckinResult result = new CheckinResult(); - result.setCheckedIn(checkedIn); - result.setWorkingCopies(workingCopies); - - return result; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * Takes the named value array that contains the comments and converts it to a Map that the underlying - * services can understand. - * - * @param comments the comments named value array - * @return Map Map that can be used with the underlying services - */ - private Map convertCommnets(NamedValue[] comments) - { - // Map the comments into the expected map - Map mapComments = new HashMap(comments.length); - for (NamedValue value : comments) - { - if (value.getName().equals(VersionModel.PROP_VERSION_TYPE) == true) - { - mapComments.put(value.getName(), VersionType.valueOf(value.getValue())); - } - else - { - mapComments.put(value.getName(), value.getValue()); - } - } - return mapComments; - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#checkinExternal(org.alfresco.repo.webservice.types.Reference, org.alfresco.repo.webservice.types.NamedValue[], boolean, org.alfresco.repo.webservice.types.ContentFormat, byte[]) - */ - public Reference checkinExternal(final Reference node, final NamedValue[] comments, final boolean keepCheckedOut, final ContentFormat format, final byte[] content) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Reference execute() - { - // Get the passed nodes - NodeRef nodeRef = Utils.convertToNodeRef( - node, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Write the content to the server - // TODO: Need to get the property QName into this method - ContentWriter contentWriter = AuthoringWebService.this.contentService.getWriter(nodeRef, ContentModel.PROP_CONTENT, false); - if (contentWriter == null) - { - throw new RuntimeException("Unable to write external content before checkin."); - } - InputStream is = new ByteArrayInputStream(content); - contentWriter.setEncoding(format.getEncoding()); - contentWriter.setMimetype(format.getMimetype()); - contentWriter.putContent(is); - String contentUrl = contentWriter.getContentUrl(); - - // Get the version properties map - Map versionProperties = convertCommnets(comments); - - // CheckIn the content - NodeRef origNodeRef = AuthoringWebService.this.cociService.checkin( - nodeRef, - versionProperties, - contentUrl, - keepCheckedOut); - // Return the orig node ref - return Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, origNodeRef); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#cancelCheckout(org.alfresco.repo.webservice.types.Predicate) - */ - public CancelCheckoutResult cancelCheckout(final Predicate items) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public CancelCheckoutResult execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Create the arrays to hold results - Reference[] origNodes = new Reference[nodes.size()]; - Reference[] workingCopies = new Reference[nodes.size()]; - int iIndex = 0; - - for (NodeRef node : nodes) - { - // Cancel the checkout - NodeRef origNode = AuthoringWebService.this.cociService.cancelCheckout(node); - - // Set the value in the arrays - origNodes[iIndex] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, origNode); - workingCopies[iIndex] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, node); - iIndex ++; - } - - CancelCheckoutResult result = new CancelCheckoutResult(); - result.setOriginals(origNodes); - result.setWorkingCopies(workingCopies); - - return result; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#lock(org.alfresco.repo.webservice.types.Predicate, - * boolean, org.alfresco.repo.webservice.authoring.LockTypeEnum) - */ - public Reference[] lock(final Predicate items, final boolean lockChildren, final LockTypeEnum lockType) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Reference[] execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Gather together the results - Reference[] result = new Reference[nodes.size()]; - int iIndex = 0; - for (NodeRef node : nodes) - { - LockType convertedLockType = convertToLockType(lockType); - AuthoringWebService.this.lockService.lock(node, convertedLockType, 0, lockChildren); - result[iIndex] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, node); - iIndex++; - } - - return result; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * Convert from the web service lock type to the Lock type enum value used by the service interface - * - * @param lockTypeEnum web service lock type value - * @return lock type enum value used by the service interface - */ - private LockType convertToLockType(LockTypeEnum lockTypeEnum) - { - LockType lockType = null; - if (lockTypeEnum.equals(LockTypeEnum.write) == true) - { - lockType = LockType.WRITE_LOCK; - } - else - { - lockType = LockType.READ_ONLY_LOCK; - } - return lockType; - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#unlock(org.alfresco.repo.webservice.types.Predicate, - * boolean) - */ - public Reference[] unlock(final Predicate items, final boolean unlockChildren) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Reference[] execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Gather together the results - Reference[] result = new Reference[nodes.size()]; - int iIndex = 0; - for (NodeRef node : nodes) - { - AuthoringWebService.this.lockService.unlock(node, unlockChildren); - - result[iIndex] = Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, node); - iIndex++; - } - - return result; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#getLockStatus(org.alfresco.repo.webservice.types.Predicate) - */ - public LockStatus[] getLockStatus(final Predicate items) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public LockStatus[] execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Gather together the results - LockStatus[] result = new LockStatus[nodes.size()]; - int iIndex = 0; - for (NodeRef node : nodes) - { - // Get the lock owner - String lockOwner = (String)AuthoringWebService.this.nodeService.getProperty(node, ContentModel.PROP_LOCK_OWNER); - - // Get the lock type - LockTypeEnum lockTypeEnum = convertFromLockType(AuthoringWebService.this.lockService.getLockType(node)); - - LockStatus lockStatus = new LockStatus(); - lockStatus.setLockOwner(lockOwner); - lockStatus.setLockType(lockTypeEnum); - lockStatus.setNode(Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, node)); - - result[iIndex] = lockStatus; - iIndex++; - } - - return result; - } - }); - } - catch (Throwable e) - { - - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - e.printStackTrace(); - throw new AuthoringFault(0, e.getMessage()); - } - } - - private LockTypeEnum convertFromLockType(LockType lockType) - { - LockTypeEnum result = null; - if (lockType != null) - { - switch (lockType) - { - case WRITE_LOCK: - result = LockTypeEnum.write; - break; - case READ_ONLY_LOCK: - result = LockTypeEnum.read; - break; - } - } - return result; - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#createVersion(org.alfresco.repo.webservice.types.Predicate, - * org.alfresco.repo.webservice.types.NamedValue[], boolean) - */ - public VersionResult createVersion(final Predicate items, final NamedValue[] comments, final boolean versionChildren) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public VersionResult execute() - { - // Get the passed nodes - List nodes = Utils.resolvePredicate( - items, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - // Map the comments into the expected map - Map mapComments = convertCommnets(comments); - - List versionedReferences = new ArrayList(nodes.size()); - List webServiceVersions = new ArrayList(nodes.size()); - - // Version each node - for (NodeRef node : nodes) - { - Collection versions = AuthoringWebService.this.versionService.createVersion(node, mapComments, versionChildren); - for (Version version : versions) - { - versionedReferences.add(Utils.convertToReference(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, version.getVersionedNodeRef())); - webServiceVersions.add(Utils.convertToVersion(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, version)); - } - } - - VersionResult result = new VersionResult(); - result.setNodes(versionedReferences.toArray(new Reference[versionedReferences.size()])); - result.setVersions(webServiceVersions.toArray(new org.alfresco.repo.webservice.types.Version[webServiceVersions.size()])); - return result; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - e.printStackTrace(); - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#getVersionHistory(org.alfresco.repo.webservice.types.Reference) - */ - public VersionHistory getVersionHistory(final Reference node) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public VersionHistory execute() - { - org.alfresco.service.cmr.version.VersionHistory versionHistory = - AuthoringWebService.this.versionService.getVersionHistory( - Utils.convertToNodeRef( - node, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService)); - - VersionHistory webServiceVersionHistory = new VersionHistory(); - if (versionHistory != null) - { - Collection versions = versionHistory.getAllVersions(); - org.alfresco.repo.webservice.types.Version[] webServiceVersions = new org.alfresco.repo.webservice.types.Version[versions.size()]; - int iIndex = 0; - for (Version version : versions) - { - webServiceVersions[iIndex] = Utils.convertToVersion(AuthoringWebService.this.nodeService, AuthoringWebService.this.namespaceService, version); - iIndex ++; - } - webServiceVersionHistory.setVersions(webServiceVersions); - } - - return webServiceVersionHistory; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#revertVersion(org.alfresco.repo.webservice.types.Reference, - * java.lang.String) - */ - @SuppressWarnings("unchecked") - public void revertVersion(final Reference node, final String versionLabel) - throws RemoteException, AuthoringFault - { - try - { - transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Object execute() - { - NodeRef nodeRef = Utils.convertToNodeRef( - node, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - org.alfresco.service.cmr.version.VersionHistory versionHistory = AuthoringWebService.this.versionService.getVersionHistory(nodeRef); - if (versionHistory != null) - { - Version version = versionHistory.getVersion(versionLabel); - if (version != null) - { - AuthoringWebService.this.versionService.revert(nodeRef, version); - } - else - { - throw new RuntimeException("The node could not be reverted because the version label is invalid."); - } - } - else - { - throw new RuntimeException("A unversioned node cannot be reverted."); - } - - return null; - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.authoring.AuthoringServiceSoapPort#deleteAllVersions(org.alfresco.repo.webservice.types.Reference) - */ - public VersionHistory deleteAllVersions(final Reference node) - throws RemoteException, AuthoringFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public VersionHistory execute() - { - NodeRef nodeRef = Utils.convertToNodeRef( - node, - AuthoringWebService.this.nodeService, - AuthoringWebService.this.searchService, - AuthoringWebService.this.namespaceService); - - AuthoringWebService.this.versionService.deleteVersionHistory(nodeRef); - - return new VersionHistory(); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new AuthoringFault(0, e.getMessage()); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/axis/QueryConfigHandler.java b/source/java/org/alfresco/repo/webservice/axis/QueryConfigHandler.java deleted file mode 100644 index a7f559ca30..0000000000 --- a/source/java/org/alfresco/repo/webservice/axis/QueryConfigHandler.java +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.axis; - -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.QueryConfiguration; -import org.apache.axis.AxisFault; -import org.apache.axis.MessageContext; -import org.apache.axis.description.OperationDesc; -import org.apache.axis.handlers.BasicHandler; -import org.apache.axis.message.SOAPEnvelope; -import org.apache.axis.message.SOAPHeaderElement; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Axis handler to extract the fetchSize parameter from the QueryConfiguration SOAP header. - * The value of fetchSize is then placed in the MessageContext with a property name of - * ALF_FETCH_SIZE - * - * @author gavinc - */ -public class QueryConfigHandler extends BasicHandler -{ - public static final String ALF_FETCH_SIZE = "ALF_FETCH_SIZE"; - - private static final long serialVersionUID = 6467938074555362971L; - private static Log logger = LogFactory.getLog(QueryConfigHandler.class); - - /** - * @see org.apache.axis.Handler#invoke(org.apache.axis.MessageContext) - */ - public void invoke(MessageContext msgContext) throws AxisFault - { - try - { - // determine the method we are calling - String opName = "Unknown method"; - OperationDesc op = msgContext.getOperation(); - if (op != null) - { - opName = op.getName(); - } - - // try and find the appropriate header and extract info from it - SOAPEnvelope env = msgContext.getRequestMessage().getSOAPEnvelope(); - SOAPHeaderElement header = env.getHeaderByName(Utils.REPOSITORY_SERVICE_NAMESPACE, "QueryHeader"); - if (header != null) - { - if (logger.isDebugEnabled()) - logger.debug("Found QueryHeader for call to " + opName); - - QueryConfiguration queryCfg = (QueryConfiguration)header.getObjectValue(QueryConfiguration.class); - if (queryCfg != null) - { - int fetchSize = queryCfg.getFetchSize(); - - if (logger.isDebugEnabled()) - logger.debug("Fetch size for query = " + fetchSize); - - msgContext.setProperty(ALF_FETCH_SIZE, new Integer(fetchSize)); - } - else - { - if (logger.isDebugEnabled()) - logger.debug("Failed to find QueryConfiguration within QueryHeader"); - } - } - else - { - if (logger.isDebugEnabled()) - { - logger.debug("QueryHeader was not found for call to " + opName); - } - } - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - logger.debug("Failed to determine fetch size", e); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/axis/SpringBeanRPCProvider.java b/source/java/org/alfresco/repo/webservice/axis/SpringBeanRPCProvider.java deleted file mode 100644 index 7692277b25..0000000000 --- a/source/java/org/alfresco/repo/webservice/axis/SpringBeanRPCProvider.java +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.axis; - -import org.alfresco.repo.webservice.Utils; -import org.apache.axis.AxisFault; -import org.apache.axis.MessageContext; -import org.apache.axis.handlers.soap.SOAPService; -import org.apache.axis.providers.java.RPCProvider; -import org.springframework.web.context.WebApplicationContext; - -/** - * A custom Axis RPC Provider that retrieves services via Spring - * - * @author gavinc - */ -public class SpringBeanRPCProvider extends RPCProvider -{ - private static final long serialVersionUID = 2173234269124176995L; - private static final String OPTION_NAME = "springBean"; - private static WebApplicationContext webAppCtx; - - /** - * Retrieves the class of the bean represented by the given name - * - * @see org.apache.axis.providers.java.JavaProvider#getServiceClass(java.lang.String, org.apache.axis.handlers.soap.SOAPService, org.apache.axis.MessageContext) - */ - @Override - protected Class getServiceClass(String beanName, SOAPService service, MessageContext msgCtx) throws AxisFault - { - Class clazz = null; - - Object bean = getBean(msgCtx, beanName); - if (bean != null) - { - clazz = bean.getClass(); - } - - return clazz; - } - - /** - * @see org.apache.axis.providers.java.JavaProvider#getServiceClassNameOptionName() - */ - @Override - protected String getServiceClassNameOptionName() - { - return OPTION_NAME; - } - - /** - * Retrieves the bean with the given name from the current spring context - * - * @see org.apache.axis.providers.java.JavaProvider#makeNewServiceObject(org.apache.axis.MessageContext, java.lang.String) - */ - @Override - protected Object makeNewServiceObject(MessageContext msgCtx, String beanName) throws Exception - { - return getBean(msgCtx, beanName); - } - - /** - * Retrieves the bean with the given name from the current spring context - * - * @param msgCtx Axis MessageContext - * @param beanName Name of the bean to lookup - * @return The instance of the bean - */ - private Object getBean(MessageContext msgCtx, String beanName) throws AxisFault - { - return getWebAppContext(msgCtx).getBean(beanName); - } - - /** - * Retrieves the Spring context from the web application - * - * @param msgCtx Axis MessageContext - * @return The Spring web app context - */ - private WebApplicationContext getWebAppContext(MessageContext msgCtx) throws AxisFault - { - if (webAppCtx == null && msgCtx != null) - { - webAppCtx = Utils.getSpringContext(msgCtx); - } - - if (webAppCtx == null) - { - throw new AxisFault("Failed to retrieve the Spring web application context"); - } - - return webAppCtx; - } - - @Override - public void initServiceDesc(SOAPService service, MessageContext msgContext) throws AxisFault - { - if( msgContext != null ) - { - getWebAppContext(msgContext); - } - super.initServiceDesc(service, msgContext); - } -} diff --git a/source/java/org/alfresco/repo/webservice/axis/TicketCallbackHandler.java b/source/java/org/alfresco/repo/webservice/axis/TicketCallbackHandler.java deleted file mode 100644 index 3a2a445c99..0000000000 --- a/source/java/org/alfresco/repo/webservice/axis/TicketCallbackHandler.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.axis; - -import java.io.IOException; - -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; -import javax.security.auth.callback.UnsupportedCallbackException; - -import org.alfresco.repo.security.authentication.AuthenticationException; -import org.alfresco.repo.webservice.authentication.AuthenticationFault; -import org.alfresco.service.cmr.security.AuthenticationService; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.ws.security.WSPasswordCallback; - -/** - * CallbackHandler that verifies the given ticket in the password element of the UsernameToken - * header is still a valid ticket - * - * @author gavinc - */ -public class TicketCallbackHandler implements CallbackHandler -{ - private static final Log logger = LogFactory.getLog(TicketCallbackHandler.class); - - private AuthenticationService authenticationService; - - /** - * Sets the AuthenticationService instance to use - * - * @param authenticationService The AuthenticationService - */ - public void setAuthenticationService(AuthenticationService authenticationService) - { - this.authenticationService = authenticationService; - } - - /** - * @see javax.security.auth.callback.CallbackHandler#handle(javax.security.auth.callback.Callback[]) - */ - public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException - { - for (int i = 0; i < callbacks.length; i++) - { - if (callbacks[i] instanceof WSPasswordCallback) - { - WSPasswordCallback pc = (WSPasswordCallback)callbacks[i]; - String ticket = pc.getPassword(); - - if (logger.isDebugEnabled()) - { - logger.debug("Verifying ticket for: " + pc.getIdentifer()); - logger.debug("Ticket: " + ticket); - } - - // ensure the ticket is valid - try - { - this.authenticationService.validate(ticket); - } - catch (AuthenticationException ae) - { - if (logger.isDebugEnabled()) - logger.debug("Ticket validation failed: " + ae.getMessage()); - - // NOTE: Throwing AuthenticationFault just gets consumed and the ws-security handler - // reports a missing password; we would need to modify the WSS4J code to let - // the exception bubble up so for now just let the default message get thrown - throw new AuthenticationFault(701, "Authentication failed due to an invalid ticket"); - } - - if (logger.isDebugEnabled()) - logger.debug("Ticket validated successfully"); - - // if all is well set the password to return as the given ticket - pc.setPassword(pc.getPassword()); - } - else - { - throw new UnsupportedCallbackException(callbacks[i], "Unrecognized Callback"); - } - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/axis/TicketCallbackSpringHandler.java b/source/java/org/alfresco/repo/webservice/axis/TicketCallbackSpringHandler.java deleted file mode 100644 index afa741fcf3..0000000000 --- a/source/java/org/alfresco/repo/webservice/axis/TicketCallbackSpringHandler.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.axis; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; - -import org.apache.axis.AxisFault; -import org.apache.axis.MessageContext; -import org.apache.axis.handlers.BasicHandler; -import org.apache.axis.transport.http.HTTPConstants; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.ws.security.handler.WSHandlerConstants; -import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.context.support.WebApplicationContextUtils; - -/** - * Axis handler that retrieves the TicketCallbackHandler instance from - * a Spring context. The authentication service is injected by Spring - * so that when it gets called by the WSS4J handler it can verify the - * ticket passed to the service. - * The callback handler is then added to the MessageContext under the standard - * WsHandlerConstants.PW_CALLBACK_REF property. - * - * @author gavinc - */ -public class TicketCallbackSpringHandler extends BasicHandler -{ - @SuppressWarnings("unused") -private static final Log logger = LogFactory.getLog(TicketCallbackSpringHandler.class); - private static final String BEAN_NAME = "ticketCallbackHandler"; - private static final long serialVersionUID = -135125831180499667L; - - /** - * @see org.apache.axis.Handler#invoke(org.apache.axis.MessageContext) - */ - public void invoke(MessageContext msgContext) throws AxisFault - { - // get hold of the Spring context and retrieve the AuthenticationService - HttpServletRequest req = (HttpServletRequest)msgContext.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST); - ServletContext servletCtx = req.getSession().getServletContext(); - WebApplicationContext webAppCtx = WebApplicationContextUtils.getRequiredWebApplicationContext(servletCtx); - TicketCallbackHandler callback = (TicketCallbackHandler)webAppCtx.getBean(BEAN_NAME); - - // store the callback in the context where the WS-Security handler can pick it up from - msgContext.setProperty(WSHandlerConstants.PW_CALLBACK_REF, callback); - } -} diff --git a/source/java/org/alfresco/repo/webservice/axis/WSDDSpringBeanRPCProvider.java b/source/java/org/alfresco/repo/webservice/axis/WSDDSpringBeanRPCProvider.java deleted file mode 100644 index 6325674e80..0000000000 --- a/source/java/org/alfresco/repo/webservice/axis/WSDDSpringBeanRPCProvider.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.axis; - -import org.apache.axis.EngineConfiguration; -import org.apache.axis.Handler; -import org.apache.axis.deployment.wsdd.WSDDProvider; -import org.apache.axis.deployment.wsdd.WSDDService; - -/** - * Provider class loaded by Axis, used to identify and - * create an instance of our SpringRPC provider which in - * turn loads service endpoints from Spring configured beans - * - * @see org.alfresco.repo.webservice.axis.SpringBeanRPCProvider - * @author gavinc - */ -public class WSDDSpringBeanRPCProvider extends WSDDProvider -{ - private static final String PROVIDER_NAME = "SpringRPC"; - - /** - * @see org.apache.axis.deployment.wsdd.WSDDProvider#newProviderInstance(org.apache.axis.deployment.wsdd.WSDDService, org.apache.axis.EngineConfiguration) - */ - @Override - public Handler newProviderInstance(WSDDService service, EngineConfiguration registry) - throws Exception - { - return new SpringBeanRPCProvider(); - } - - /** - * @see org.apache.axis.deployment.wsdd.WSDDProvider#getName() - */ - @Override - public String getName() - { - return PROVIDER_NAME; - } - -} diff --git a/source/java/org/alfresco/repo/webservice/classification/ClassificationWebService.java b/source/java/org/alfresco/repo/webservice/classification/ClassificationWebService.java deleted file mode 100644 index 8de5f12a9a..0000000000 --- a/source/java/org/alfresco/repo/webservice/classification/ClassificationWebService.java +++ /dev/null @@ -1,459 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.classification; - -import java.rmi.RemoteException; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Set; - -import org.alfresco.model.ContentModel; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.Category; -import org.alfresco.repo.webservice.types.ClassDefinition; -import org.alfresco.repo.webservice.types.Classification; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.Store; -import org.alfresco.service.cmr.dictionary.DataTypeDefinition; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.dictionary.PropertyDefinition; -import org.alfresco.service.cmr.repository.ChildAssociationRef; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; -import org.alfresco.service.cmr.search.CategoryService; -import org.alfresco.service.namespace.QName; -import org.alfresco.service.transaction.TransactionService; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Web service implementation of the ClassificationService. The WSDL for this - * service can be accessed from - * http://localhost:8080/alfresco/wsdl/classification-service.wsdl - * - * @author gavinc - */ -public class ClassificationWebService extends AbstractWebService implements - ClassificationServiceSoapPort -{ - private static Log logger = LogFactory.getLog(ClassificationWebService.class); - - /** - * The category service - */ - private CategoryService categoryService; - - /** - * The dictionary service - */ - private DictionaryService dictionaryService; - - /** - * The transaction service - */ - private TransactionService transactionService; - - /** - * Set the category service - * - * @param categoryService the category service - */ - public void setCategoryService(CategoryService categoryService) - { - this.categoryService = categoryService; - } - - /** - * Set the transaction service - * - * @param transactionService the transaction service - */ - public void setTransactionService(TransactionService transactionService) - { - this.transactionService = transactionService; - } - - /** - * Set the dictionary service - * - * @param dictionaryService the dictionary service - */ - public void setDictionaryService(DictionaryService dictionaryService) - { - this.dictionaryService = dictionaryService; - } - - /** - * @see org.alfresco.repo.webservice.classification.ClassificationServiceSoapPort#getClassifications() - */ - public Classification[] getClassifications(final Store store) throws RemoteException, - ClassificationFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Classification[] execute() - { - List classifications = new ArrayList(); - - Collection categoryAspects = ClassificationWebService.this.categoryService.getClassificationAspects(); - for (QName aspect : categoryAspects) - { - // Get the title of the cateogry - String title = null; - org.alfresco.service.cmr.dictionary.ClassDefinition aspectDefinition = ClassificationWebService.this.dictionaryService.getClass(aspect); - if (aspectDefinition != null) - { - title = aspectDefinition.getTitle(dictionaryService); - } - - if (logger.isDebugEnabled()) - { - logger.debug("Category aspect found: " + title + " (" + aspect.toString() + ")"); - } - - Collection assocs = ClassificationWebService.this.categoryService.getCategories( - Utils.convertToStoreRef(store), - aspect, - CategoryService.Depth.IMMEDIATE); - for (ChildAssociationRef assoc : assocs) - { - NodeRef categoryNodeRef = assoc.getChildRef(); - - Classification classification = new Classification(); - classification.setClassification(aspect.toString()); - classification.setTitle(title); - // TODO set the description - classification.setRootCategory(convertToCategory(categoryNodeRef)); - - classifications.add(classification); - } - } - - return classifications.toArray(new Classification[classifications.size()]); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new ClassificationFault(0, e.getMessage()); - } - } - - private Category convertToCategory(NodeRef nodeRef) - { - String title = (String)this.nodeService.getProperty(nodeRef, ContentModel.PROP_NAME); - - if (logger.isDebugEnabled()) - { - logger.debug("Category: " + title + "(" + nodeRef.toString() + ")"); - } - - Category category = new Category(); - category.setId(Utils.convertToReference(this.nodeService, this.namespaceService, nodeRef)); - category.setTitle(title); - // TODO need to set the description - return category; - } - - /** - * @see org.alfresco.repo.webservice.classification.ClassificationServiceSoapPort#getChildCategories(org.alfresco.repo.webservice.types.Reference) - */ - public Category[] getChildCategories(final Reference parentCategory) - throws RemoteException, ClassificationFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public Category[] execute() - { - NodeRef parentNodeRef = Utils.convertToNodeRef( - parentCategory, - ClassificationWebService.this.nodeService, - ClassificationWebService.this.searchService, - ClassificationWebService.this.namespaceService); - - Collection assocs = ClassificationWebService.this.categoryService.getChildren( - parentNodeRef, - CategoryService.Mode.SUB_CATEGORIES, - CategoryService.Depth.IMMEDIATE); - - List categories = new ArrayList(assocs.size()); - - for (ChildAssociationRef assoc : assocs) - { - NodeRef categoryNodeRef = assoc.getChildRef(); - categories.add(convertToCategory(categoryNodeRef)); - } - - return categories.toArray(new Category[categories.size()]); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new ClassificationFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.classification.ClassificationServiceSoapPort#getCategories(org.alfresco.repo.webservice.types.Predicate) - */ - public CategoriesResult[] getCategories(final Predicate items) - throws RemoteException, ClassificationFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public CategoriesResult[] execute() - { - List result = new ArrayList(); - - List nodeRefs = Utils.resolvePredicate( - items, - ClassificationWebService.this.nodeService, - ClassificationWebService.this.searchService, - ClassificationWebService.this.namespaceService); - - for (NodeRef nodeRef : nodeRefs) - { - List appliedCategories = new ArrayList(); - - Set apsects = ClassificationWebService.this.nodeService.getAspects(nodeRef); - for (QName aspect : apsects) - { - if (ClassificationWebService.this.dictionaryService.isSubClass(aspect, ContentModel.ASPECT_CLASSIFIABLE) == true) - { - QName categoryPropertyName = getPropertyName(aspect); - - if (categoryPropertyName != null) - { - // Get the category value - Collection categoryNodeRefs = DefaultTypeConverter.INSTANCE.getCollection( - NodeRef.class, - ClassificationWebService.this.nodeService.getProperty(nodeRef, categoryPropertyName)); - - Reference[] categoryReferences = new Reference[categoryNodeRefs.size()]; - int iIndex = 0; - for (NodeRef categoryNodeRef : categoryNodeRefs) - { - categoryReferences[iIndex] = Utils.convertToReference(ClassificationWebService.this.nodeService, ClassificationWebService.this.namespaceService, categoryNodeRef); - iIndex ++; - } - - - // Create the applied category object - AppliedCategory appliedCategory = new AppliedCategory(); - appliedCategory.setClassification(aspect.toString()); - appliedCategory.setCategories(categoryReferences); - - appliedCategories.add(appliedCategory); - } - } - } - - // Create the category result object - CategoriesResult categoryResult = new CategoriesResult(); - categoryResult.setNode(Utils.convertToReference(ClassificationWebService.this.nodeService, ClassificationWebService.this.namespaceService, nodeRef)); - categoryResult.setCategories(appliedCategories.toArray(new AppliedCategory[appliedCategories.size()])); - - result.add(categoryResult); - } - - return result.toArray(new CategoriesResult[result.size()]); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new ClassificationFault(0, e.getMessage()); - } - } - - /** - * Get the category property qname for a classifiable apsect - * - * @param aspect the aspect qname - * @return the property qname, null if none found - */ - private QName getPropertyName(QName aspect) - { - QName categoryPropertyName = null; - - // Need to get category property - org.alfresco.service.cmr.dictionary.ClassDefinition classDefinition = ClassificationWebService.this.dictionaryService.getClass(aspect); - for (PropertyDefinition propertyDefintion : classDefinition.getProperties().values()) - { - if (DataTypeDefinition.CATEGORY.equals(propertyDefintion.getDataType().getName()) == true) - { - // We have found the category property (assume there is only one) - categoryPropertyName = propertyDefintion.getName(); - break; - } - } - - return categoryPropertyName; - } - - /** - * @see org.alfresco.repo.webservice.classification.ClassificationServiceSoapPort#setCategories(org.alfresco.repo.webservice.types.Predicate, - * org.alfresco.repo.webservice.classification.AppliedCategory[]) - */ - public CategoriesResult[] setCategories(final Predicate items, final AppliedCategory[] categories) - throws RemoteException, ClassificationFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public CategoriesResult[] execute() - { - List result = new ArrayList(); - - List nodeRefs = Utils.resolvePredicate( - items, - ClassificationWebService.this.nodeService, - ClassificationWebService.this.searchService, - ClassificationWebService.this.namespaceService); - - for (NodeRef nodeRef : nodeRefs) - { - List appliedCategories = new ArrayList(); - - for (AppliedCategory category : categories) - { - QName aspect = QName.createQName(category.getClassification()); - QName propertyName = getPropertyName(aspect); - if (propertyName != null) - { - // First check that the aspect has been applied to the node - if (ClassificationWebService.this.nodeService.hasAspect(nodeRef, aspect) == false) - { - ClassificationWebService.this.nodeService.addAspect(nodeRef, aspect, null); - } - - Reference[] categories = category.getCategories(); - ArrayList categoryNodeRefs = null; - if(categories == null) - { - categoryNodeRefs = new ArrayList(0); - } - else - { - categoryNodeRefs = new ArrayList(categories.length); - for (Reference categoryReference : categories) - { - categoryNodeRefs.add(Utils.convertToNodeRef( - categoryReference, - ClassificationWebService.this.nodeService, - ClassificationWebService.this.searchService, - ClassificationWebService.this.namespaceService)); - } - } - - ClassificationWebService.this.nodeService.setProperty(nodeRef, propertyName, categoryNodeRefs); - - // Create the applied category object - AppliedCategory appliedCategory = new AppliedCategory(); - appliedCategory.setClassification(category.getClassification()); - appliedCategory.setCategories(category.getCategories()); - - appliedCategories.add(appliedCategory); - } - } - - - // Create the category result object - CategoriesResult categoryResult = new CategoriesResult(); - categoryResult.setNode(Utils.convertToReference(ClassificationWebService.this.nodeService, ClassificationWebService.this.namespaceService, nodeRef)); - categoryResult.setCategories(appliedCategories.toArray(new AppliedCategory[appliedCategories.size()])); - - result.add(categoryResult); - } - - return result.toArray(new CategoriesResult[result.size()]); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new ClassificationFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.classification.ClassificationServiceSoapPort#describeClassification(org.alfresco.repo.webservice.types.Reference) - */ - public ClassDefinition describeClassification(final String classification) - throws RemoteException, ClassificationFault - { - try - { - return transactionService.getRetryingTransactionHelper().doInTransaction( - new RetryingTransactionCallback() - { - public ClassDefinition execute() - { - org.alfresco.service.cmr.dictionary.ClassDefinition classDefinition = ClassificationWebService.this.dictionaryService.getClass(QName.createQName(classification)); - return Utils.setupClassDefObject(dictionaryService, classDefinition); - } - }); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - - throw new ClassificationFault(0, e.getMessage()); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/content/ContentWebService.java b/source/java/org/alfresco/repo/webservice/content/ContentWebService.java deleted file mode 100644 index 0706ff834c..0000000000 --- a/source/java/org/alfresco/repo/webservice/content/ContentWebService.java +++ /dev/null @@ -1,420 +0,0 @@ -/* - * Copyright (C) 2005-2012 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.content; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.rmi.RemoteException; -import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -import javax.activation.DataHandler; -import javax.servlet.http.HttpServletRequest; - -import org.alfresco.error.AlfrescoRuntimeException; -import org.alfresco.model.ContentModel; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.ContentFormat; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.service.cmr.repository.ContentReader; -import org.alfresco.service.cmr.repository.ContentWriter; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.TransformationOptions; -import org.alfresco.service.namespace.QName; -import org.apache.axis.AxisFault; -import org.apache.axis.Message; -import org.apache.axis.MessageContext; -import org.apache.axis.attachments.AttachmentPart; -import org.apache.axis.attachments.Attachments; -import org.apache.axis.transport.http.HTTPConstants; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Web service implementation of the ContentService. The WSDL for this service - * can be accessed from http://localhost:8080/alfresco/wsdl/content-service.wsdl - * - * @author gavinc - */ -public class ContentWebService extends AbstractWebService implements - ContentServiceSoapPort -{ - private static Log logger = LogFactory.getLog(ContentWebService.class); - - private static final String BROWSER_URL = "{0}://{1}{2}/download/direct/{3}/{4}/{5}/{6}"; - - /** - * @see org.alfresco.repo.webservice.content.ContentServiceSoapPort#read(org.alfresco.repo.webservice.types.Reference) - */ - public Content[] read(final Predicate items, final String property) - throws RemoteException, ContentFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Content[] execute() throws Throwable - { - // resolve the predicates - List nodes = Utils.resolvePredicate(items, nodeService, searchService, namespaceService); - List results = new ArrayList(nodes.size()); - for (NodeRef nodeRef : nodes) - { - // Add content to the result - results.add(createContent(nodeRef, property)); - } - - return results.toArray(new Content[results.size()]); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new ContentFault(0, e.getMessage()); - } - } - - /** - * Create the content object - * - * @param nodeRef the node reference - * @param property the content property - * @return the content object - * @throws UnsupportedEncodingException - */ - private Content createContent(NodeRef nodeRef, String property) - throws UnsupportedEncodingException - { - Content content = null; - - // Lets have a look and see if this node has any content on this node - ContentReader contentReader = this.contentService.getReader(nodeRef, QName.createQName(property)); - - if (contentReader != null) - { - // Work out what the server, port and context path are - HttpServletRequest req = (HttpServletRequest)MessageContext.getCurrentContext().getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST); - - String address = req.getServerName(); - if (req.getLocalPort() != 80) - { - address = address + ":" + req.getServerPort(); - } - - // Get the file name - String filename = (String)this.nodeService.getProperty(nodeRef, ContentModel.PROP_NAME); - - // Filename may not exist if this node isn't a cm:object - if (filename == null) - { - filename = "file.bin"; - } - - // format the URL that can be used to download the content - String downloadUrl = MessageFormat.format(BROWSER_URL, - new Object[] { req.getScheme(), address, - req.getContextPath(), - nodeRef.getStoreRef().getProtocol(), - nodeRef.getStoreRef().getIdentifier(), - nodeRef.getId(), - URLEncoder.encode(filename, "UTF-8") }); - - // Create the content object - ContentFormat format = new ContentFormat(contentReader.getMimetype(), contentReader.getEncoding()); - content = new Content(Utils.convertToReference(this.nodeService, this.namespaceService, nodeRef), property, contentReader.getSize(), format, downloadUrl); - - // Debug - if (logger.isDebugEnabled()) - { - logger.debug("Content: " + nodeRef.getId() + " name=" - + filename + " encoding=" - + content.getFormat().getEncoding() + " mimetype=" - + content.getFormat().getMimetype() + " size=" - + content.getLength() + " downloadURL=" - + content.getUrl()); - } - } - else - { - // Create an empty content object - content = new Content(Utils.convertToReference(this.nodeService, this.namespaceService, nodeRef), property, 0, null, null); - - // Debug - if (logger.isDebugEnabled()) - { - logger.debug("No content found: " + nodeRef.getId()); - } - } - - return content; - } - - /** - * @see org.alfresco.repo.webservice.content.ContentServiceSoapPort#write(org.alfresco.repo.webservice.types.Reference, - * byte[]) - */ - public Content write(final Reference node, final String property, final byte[] content, final ContentFormat format) - throws RemoteException, ContentFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Content execute() throws Throwable - { - // create a NodeRef from the parent reference - NodeRef nodeRef = Utils.convertToNodeRef(node, nodeService, searchService, namespaceService); - - // Get the content writer - ContentWriter writer = contentService.getWriter(nodeRef, QName.createQName(property), true); - - // Set the content format details (if they have been specified) - if (format != null) - { - writer.setEncoding(format.getEncoding()); - writer.setMimetype(format.getMimetype()); - } - - // Write the content - InputStream is = new ByteArrayInputStream(content); - writer.putContent(is); - - // Debug - if (logger.isDebugEnabled()) - { - logger.debug("Updated content for node with id: " + nodeRef.getId()); - } - - // Return the content object - return createContent(nodeRef, property); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new ContentFault(0, e.getMessage()); - } - } - - /** - * @see org.alfresco.repo.webservice.content.ContentServiceSoapPort#writeWithAttachments(org.alfresco.repo.webservice.types.Reference[], java.lang.String[], org.alfresco.repo.webservice.types.ContentFormat[]) - */ - public Content writeWithAttachment(final Reference node, final String property, final ContentFormat format) - throws RemoteException, ContentFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Content execute() throws Throwable - { - AttachmentPart[] attachments = getMessageAttachments(); - if (attachments.length != 1) - { - throw new AlfrescoRuntimeException("Expecting only one attachment"); - } - - // create a NodeRef from the parent reference - NodeRef nodeRef = Utils.convertToNodeRef(node, nodeService, searchService, namespaceService); - - // Get the content writer - ContentWriter writer = contentService.getWriter(nodeRef, QName.createQName(property), true); - - // Set the content format details (if they have been specified) - if (format != null) - { - writer.setEncoding(format.getEncoding()); - writer.setMimetype(format.getMimetype()); - } - - // Write the content (just need to get the first in the array since we are only expecting one attachment) - DataHandler dh = attachments[0].getDataHandler(); - InputStream is = dh.getInputStream(); - writer.putContent(is); - - // Debug - if (logger.isDebugEnabled()) - { - logger.debug("Updated content for node with id: " + nodeRef.getId()); - } - - // Return the content object - return createContent(nodeRef, property); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new ContentFault(0, e.getMessage()); - } - - - } - - @SuppressWarnings("unchecked") - private AttachmentPart[] getMessageAttachments() - throws AxisFault - { - MessageContext msgContext = MessageContext.getCurrentContext(); - Message reqMsg = msgContext.getRequestMessage(); - Attachments messageAttachments = reqMsg.getAttachmentsImpl(); - if (null == messageAttachments) - { - return new AttachmentPart[0]; - } - int attachmentCount = messageAttachments.getAttachmentCount(); - AttachmentPart attachments[] = new AttachmentPart[attachmentCount]; - Iterator it = messageAttachments.getAttachments().iterator(); - int count = 0; - while (it.hasNext()) - { - AttachmentPart part = (AttachmentPart)it.next(); - attachments[count++] = part; - } - - return attachments; - } - - /** - * @see org.alfresco.repo.webservice.content.ContentServiceSoapPort#clear(org.alfresco.repo.webservice.types.Predicate, - * java.lang.String) - */ - public Content[] clear(final Predicate items, final String property) throws RemoteException, ContentFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Content[] execute() throws Throwable - { - List nodes = Utils.resolvePredicate(items, nodeService, searchService, namespaceService); - Content[] contents = new Content[nodes.size()]; - - // delete each node in the predicate - for (int x = 0; x < nodes.size(); x++) - { - NodeRef nodeRef = nodes.get(x); - - // Clear the content - nodeService.setProperty(nodeRef, QName.createQName(property), null); - - if (logger.isDebugEnabled()) - { - logger.debug("Cleared content node with id: " + nodeRef.getId()); - } - - contents[x] = createContent(nodeRef, property); - } - return contents; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new ContentFault(0, e.getMessage()); - } - } - - /** - * Transforms content from one node and mimetype to another node and mimetype - * - * @see org.alfresco.repo.webservice.content.ContentServiceSoapPort#transform(org.alfresco.repo.webservice.types.Reference, java.lang.String, org.alfresco.repo.webservice.types.Reference, java.lang.String, org.alfresco.repo.webservice.types.ContentFormat) - */ - public Content transform( - final Reference source, - final String property, - final Reference destinationReference, - final String destinationProperty, - final ContentFormat destinationFormat) - throws RemoteException, ContentFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Content execute() throws Throwable - { - // Get the nodes and property qname's - NodeRef sourceNodeRef = Utils.convertToNodeRef(source, ContentWebService.this.nodeService, ContentWebService.this.searchService, ContentWebService.this.namespaceService); - NodeRef destinationNodeRef = Utils.convertToNodeRef(destinationReference, ContentWebService.this.nodeService, ContentWebService.this.searchService, ContentWebService.this.namespaceService); - QName sourceQName = QName.createQName(property); - QName destinationQName = QName.createQName(destinationProperty); - - // Get the content reader - ContentReader contentReader = ContentWebService.this.contentService.getReader(sourceNodeRef, sourceQName); - if (contentReader == null) - { - throw new AlfrescoRuntimeException("Source content does not exist. Transform could not take place."); - } - - // Get the content writer - ContentWriter contentWriter = ContentWebService.this.contentService.getWriter(destinationNodeRef, destinationQName, true); - contentWriter.setEncoding(destinationFormat.getEncoding()); - contentWriter.setMimetype(destinationFormat.getMimetype()); - - TransformationOptions options = new TransformationOptions(); - options.setSourceNodeRef(sourceNodeRef); - - // Transform the content - ContentWebService.this.contentService.transform(contentReader, contentWriter, options); - - // Return the content object to the user - return createContent(destinationNodeRef, destinationProperty); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new ContentFault(0, e.getMessage()); - } - - } -} diff --git a/source/java/org/alfresco/repo/webservice/dictionary/DictionaryWebService.java b/source/java/org/alfresco/repo/webservice/dictionary/DictionaryWebService.java deleted file mode 100644 index 2edf0e723a..0000000000 --- a/source/java/org/alfresco/repo/webservice/dictionary/DictionaryWebService.java +++ /dev/null @@ -1,306 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -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 classDefs = new HashSet(); - classDefs.addAll(getClassDefs(types, false)); - classDefs.addAll(getClassDefs(aspects, true)); - - List wsClassDefs = new ArrayList(classDefs.size()); - for (org.alfresco.service.cmr.dictionary.ClassDefinition classDef : classDefs) - { - wsClassDefs.add(Utils.setupClassDefObject(dictionaryService, 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(dictionaryService, 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(dictionaryService, 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 getClassDefs(ClassPredicate predicate, boolean forAspects) - { - Set classDefs = new HashSet(); - 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 touchedClassDefs = new HashSet(); - 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 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 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 subClasses, boolean recurse) - { - QName superClass = classDef.getName(); - - Collection subClassNames = (classDef.isAspect()) ? dictionaryService.getSubAspects(superClass, recurse) : dictionaryService.getSubTypes(superClass, recurse); - - for (QName subClass : subClassNames) - { - org.alfresco.service.cmr.dictionary.ClassDefinition subClassDef = dictionaryService.getClass(subClass); - subClasses.add(subClassDef); - } - } - -} diff --git a/source/java/org/alfresco/repo/webservice/repository/AssociationQuery.java b/source/java/org/alfresco/repo/webservice/repository/AssociationQuery.java deleted file mode 100644 index a44c7df70d..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/AssociationQuery.java +++ /dev/null @@ -1,185 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import org.alfresco.repo.security.permissions.AccessDeniedException; -import org.alfresco.repo.webservice.AbstractQuery; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.ResultSetRow; -import org.alfresco.repo.webservice.types.ResultSetRowNode; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.AssociationRef; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; -import org.alfresco.service.namespace.QNamePattern; -import org.alfresco.service.namespace.RegexQNamePattern; - -/** - * A query to retrieve normal node associations. - * - * @author Derek Hulley - * @since 2.1 - */ -public class AssociationQuery extends AbstractQuery -{ - private static final long serialVersionUID = -672399618512462040L; - - private Reference node; - private Association association; - - private final static String SOURCE = "source"; - - /** - * @param node - * The node to query against - * @param association - * The association type to query or null to query all - */ - public AssociationQuery(Reference node, Association association) - { - this.node = node; - this.association = association; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(128); - sb.append("AssociationQuery") - .append("[ node=").append(node.getUuid()) - .append(", association=").append(association) - .append("]"); - return sb.toString(); - } - - /** - * {@inheritDoc} - */ - public ResultSet execute(ServiceRegistry serviceRegistry) - { - SearchService searchService = serviceRegistry.getSearchService(); - NodeService nodeService = serviceRegistry.getNodeService(); - DictionaryService dictionaryService = serviceRegistry.getDictionaryService(); - NamespaceService namespaceService = serviceRegistry.getNamespaceService(); - - // create the node ref and get the children from the repository - NodeRef nodeRef = Utils.convertToNodeRef(node, nodeService, searchService, namespaceService); - List assocRefs = null; - if (this.association == null) - { - assocRefs = nodeService.getTargetAssocs(nodeRef, RegexQNamePattern.MATCH_ALL); - } - else - { - QNamePattern name = RegexQNamePattern.MATCH_ALL; - String assocType = this.association.getAssociationType(); - if (assocType != null) - { - name = QName.createQName(assocType); - } - if (SOURCE.equals(this.association.getDirection()) == true) - { - assocRefs = nodeService.getSourceAssocs(nodeRef, name); - } - else - { - assocRefs = nodeService.getTargetAssocs(nodeRef, name); - } - } - - ResultSet results = new ResultSet(); - List rows = new ArrayList(assocRefs.size()); - - int index = 0; - NodeRef childNodeRef = null; - for (AssociationRef assocRef : assocRefs) - { - if (SOURCE.equals(this.association.getDirection()) == true) - { - childNodeRef = assocRef.getSourceRef(); - } - else - { - childNodeRef = assocRef.getTargetRef(); - } - - Map props = null; - try - { - props = nodeService.getProperties(childNodeRef); - } - catch (AccessDeniedException e) - { - // user has no access to associated node - } - - if (props != null) - { - ResultSetRowNode rowNode = createResultSetRowNode(childNodeRef, nodeService); - - // create columns for all the properties of the node - // get the data for the row and build up the columns structure - NamedValue[] columns = new NamedValue[props.size()+2]; - int col = 0; - for (QName propName : props.keySet()) - { - columns[col] = Utils.createNamedValue(dictionaryService, propName, props.get(propName)); - col++; - } - - // Now add the system columns containing the association details - columns[col] = new NamedValue(SYS_COL_ASSOC_TYPE, Boolean.FALSE, assocRef.getTypeQName().toString(), null); - - // Add one more column for the node's path - col++; - columns[col] = Utils.createNamedValue( - dictionaryService, - QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "path"), - nodeService.getPath(childNodeRef).toString()); - - ResultSetRow row = new ResultSetRow(); - row.setRowIndex(index); - row.setNode(rowNode); - row.setColumns(columns); - - // add the row to the overall results - rows.add(row); - index++; - } - } - - // add the rows to the result set and set the total row count - results.setRows(rows.toArray(new ResultSetRow[0])); - results.setTotalRowCount(rows.size()); - - return results; - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/repository/ChildAssociationQuery.java b/source/java/org/alfresco/repo/webservice/repository/ChildAssociationQuery.java deleted file mode 100644 index eca4b4eaad..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/ChildAssociationQuery.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import java.io.Serializable; -import java.util.List; -import java.util.Map; - -import org.alfresco.repo.webservice.AbstractQuery; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.ResultSetRow; -import org.alfresco.repo.webservice.types.ResultSetRowNode; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.ChildAssociationRef; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; - -/** - * A query to retrieve all child associations on a node. - * - * @author Derek Hulley - * @since 2.1 - */ -public class ChildAssociationQuery extends AbstractQuery -{ - private static final long serialVersionUID = -4965097420552826582L; - - private Reference node; - - /** - * @param node - * The node to query against - */ - public ChildAssociationQuery(Reference node) - { - this.node = node; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(128); - sb.append("ChildAssociationQuery") - .append("[ node=").append(node.getUuid()) - .append("]"); - return sb.toString(); - } - - /** - * {@inheritDoc} - */ - public ResultSet execute(ServiceRegistry serviceRegistry) - { - SearchService searchService = serviceRegistry.getSearchService(); - NodeService nodeService = serviceRegistry.getNodeService(); - DictionaryService dictionaryService = serviceRegistry.getDictionaryService(); - NamespaceService namespaceService = serviceRegistry.getNamespaceService(); - - // create the node ref and get the children from the repository - NodeRef nodeRef = Utils.convertToNodeRef(node, nodeService, searchService, namespaceService); - List assocRefs = nodeService.getChildAssocs(nodeRef); - - int totalRows = assocRefs.size(); - - ResultSet results = new ResultSet(); - ResultSetRow[] rows = new ResultSetRow[totalRows]; - - int index = 0; - for (ChildAssociationRef assocRef : assocRefs) - { - NodeRef childNodeRef = assocRef.getChildRef(); - ResultSetRowNode rowNode = createResultSetRowNode(childNodeRef, nodeService); - - // create columns for all the properties of the node - // get the data for the row and build up the columns structure - Map props = nodeService.getProperties(childNodeRef); - NamedValue[] columns = new NamedValue[props.size()+5]; - int col = 0; - for (QName propName : props.keySet()) - { - columns[col] = Utils.createNamedValue(dictionaryService, propName, props.get(propName)); - col++; - } - - // Now add the system columns containing the association details - columns[col] = new NamedValue(SYS_COL_ASSOC_TYPE, Boolean.FALSE, assocRef.getTypeQName().toString(), null); - col++; - columns[col] = new NamedValue(SYS_COL_ASSOC_NAME, Boolean.FALSE, assocRef.getQName().toString(), null); - col++; - columns[col] = new NamedValue(SYS_COL_IS_PRIMARY, Boolean.FALSE, Boolean.toString(assocRef.isPrimary()), null); - col++; - columns[col] = new NamedValue(SYS_COL_NTH_SIBLING, Boolean.FALSE, Integer.toString(assocRef.getNthSibling()), null); - - // Add one more column for the node's path - col++; - columns[col] = Utils.createNamedValue( - dictionaryService, - QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "path"), - nodeService.getPath(childNodeRef).toString()); - - ResultSetRow row = new ResultSetRow(); - row.setRowIndex(index); - row.setNode(rowNode); - row.setColumns(columns); - - // add the row to the overall results - rows[index] = row; - index++; - } - - // add the rows to the result set and set the total row count - results.setRows(rows); - results.setTotalRowCount(totalRows); - - return results; - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/repository/ParentAssociationQuery.java b/source/java/org/alfresco/repo/webservice/repository/ParentAssociationQuery.java deleted file mode 100644 index e09e2ba75b..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/ParentAssociationQuery.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import java.io.Serializable; -import java.util.List; -import java.util.Map; - -import org.alfresco.repo.webservice.AbstractQuery; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.ResultSetRow; -import org.alfresco.repo.webservice.types.ResultSetRowNode; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.ChildAssociationRef; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; - -/** - * A query to retrieve all parent associations on a node. - * - * @author Derek Hulley - * @since 2.1 - */ -public class ParentAssociationQuery extends AbstractQuery -{ - private static final long serialVersionUID = -4157476722256947274L; - - private Reference node; - - /** - * @param node - * The node to query against - */ - public ParentAssociationQuery(Reference node) - { - this.node = node; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(128); - sb.append("ParentAssociationQuery") - .append("[ node=").append(node.getUuid()) - .append("]"); - return sb.toString(); - } - - /** - * {@inheritDoc} - */ - public ResultSet execute(ServiceRegistry serviceRegistry) - { - SearchService searchService = serviceRegistry.getSearchService(); - NodeService nodeService = serviceRegistry.getNodeService(); - DictionaryService dictionaryService = serviceRegistry.getDictionaryService(); - NamespaceService namespaceService = serviceRegistry.getNamespaceService(); - - // create the node ref and get the parent from the repository - NodeRef nodeRef = Utils.convertToNodeRef(node, nodeService, searchService, namespaceService); - List assocRefs = nodeService.getParentAssocs(nodeRef); - - int totalRows = assocRefs.size(); - - ResultSet results = new ResultSet(); - ResultSetRow[] rows = new ResultSetRow[totalRows]; - - int index = 0; - for (ChildAssociationRef assocRef : assocRefs) - { - NodeRef parentNodeRef = assocRef.getParentRef(); - ResultSetRowNode rowNode = createResultSetRowNode(parentNodeRef, nodeService); - - // create columns for all the properties of the node - // get the data for the row and build up the columns structure - Map props = nodeService.getProperties(parentNodeRef); - NamedValue[] columns = new NamedValue[props.size()+5]; - int col = 0; - for (QName propName : props.keySet()) - { - columns[col] = Utils.createNamedValue(dictionaryService, propName, props.get(propName)); - col++; - } - - // Now add the system columns containing the association details - columns[col] = new NamedValue(SYS_COL_ASSOC_TYPE, Boolean.FALSE, assocRef.getTypeQName().toString(), null); - col++; - columns[col] = new NamedValue(SYS_COL_ASSOC_NAME, Boolean.FALSE, assocRef.getQName().toString(), null); - col++; - columns[col] = new NamedValue(SYS_COL_IS_PRIMARY, Boolean.FALSE, Boolean.toString(assocRef.isPrimary()), null); - col++; - columns[col] = new NamedValue(SYS_COL_NTH_SIBLING, Boolean.FALSE, Integer.toString(assocRef.getNthSibling()), null); - - // Add one more column for the node's path - col++; - columns[col] = Utils.createNamedValue( - dictionaryService, - QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "path"), - nodeService.getPath(parentNodeRef).toString()); - - ResultSetRow row = new ResultSetRow(); - row.setRowIndex(index); - row.setNode(rowNode); - row.setColumns(columns); - - // add the row to the overall results - rows[index] = row; - index++; - } - - // add the rows to the result set and set the total row count - results.setRows(rows); - results.setTotalRowCount(totalRows); - - return results; - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/webservice/repository/RepositoryQuerySession.java b/source/java/org/alfresco/repo/webservice/repository/RepositoryQuerySession.java deleted file mode 100644 index 2ec76a5901..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/RepositoryQuerySession.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import org.alfresco.repo.webservice.AbstractQuerySession; -import org.alfresco.repo.webservice.ServerQuery; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.ResultSetRow; -import org.alfresco.service.ServiceRegistry; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * A query session for use with {@linkplain RepositoryWebService node-related queries} against the - * repository. - * - * @author Derek Hulley - * @since 2.1 - */ -public class RepositoryQuerySession extends AbstractQuerySession -{ - private static final long serialVersionUID = -3621997639261137000L; - - private static Log logger = LogFactory.getLog(RepositoryQuerySession.class); - - public RepositoryQuerySession(long maxResults, long batchSize, ServerQuery query) - { - super(maxResults, batchSize, query); - } - - @Override - protected ResultSetRow[] makeArray(int size) - { - return new ResultSetRow[size]; - } - - /* (non-Javadoc) - * @see org.alfresco.repo.webservice.QuerySession#getNextResults(org.alfresco.service.ServiceRegistry) - */ - public ResultSet getNextResults(ServiceRegistry serviceRegistry) - { - ResultSet queryResults = getQueryResults(serviceRegistry); - ResultSetRow[] allRows = queryResults.getRows(); - ResultSetRow[] batchedRows = getNextResults(allRows); - // Build the resultset for the batched results - ResultSet batchedResults = new ResultSet(); - batchedResults.setMetaData(queryResults.getMetaData()); - batchedResults.setRows(batchedRows); - batchedResults.setTotalRowCount(allRows.length); - logger.debug("total row count :"+allRows.length); - // Done - return batchedResults; - } -} diff --git a/source/java/org/alfresco/repo/webservice/repository/RepositoryWebService.java b/source/java/org/alfresco/repo/webservice/repository/RepositoryWebService.java deleted file mode 100644 index 8aa57a34fd..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/RepositoryWebService.java +++ /dev/null @@ -1,479 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import java.io.Serializable; -import java.rmi.RemoteException; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.repo.webservice.AbstractWebService; -import org.alfresco.repo.webservice.CMLUtil; -import org.alfresco.repo.webservice.ServerQuery; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.CML; -import org.alfresco.repo.webservice.types.ClassDefinition; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Node; -import org.alfresco.repo.webservice.types.NodeDefinition; -import org.alfresco.repo.webservice.types.Predicate; -import org.alfresco.repo.webservice.types.Query; -import org.alfresco.repo.webservice.types.Reference; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.Store; -import org.alfresco.service.cmr.dictionary.AspectDefinition; -import org.alfresco.service.cmr.dictionary.TypeDefinition; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.namespace.QName; -import org.apache.axis.MessageContext; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Web service implementation of the RepositoryService. The WSDL for this - * service can be accessed from - * http://localhost:8080/alfresco/wsdl/repository-service.wsdl - * - * @author gavinc - */ -public class RepositoryWebService extends AbstractWebService implements - RepositoryServiceSoapPort -{ - private static Log logger = LogFactory.getLog(RepositoryWebService.class); - - private CMLUtil cmlUtil; - - /** - * Sets the CML Util - * - * @param cmlUtil CML util object - */ - public void setCmlUtil(CMLUtil cmlUtil) - { - this.cmlUtil = cmlUtil; - } - - /** - * {@inheritDoc} - */ - public Store createStore(String scheme, String address) throws RemoteException, RepositoryFault - { - StoreRef storeRef = this.nodeService.createStore(scheme, address); - return Utils.convertToStore(storeRef); - } - - /** - * {@inheritDoc} - */ - public Store[] getStores() throws RemoteException, RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Store[] execute() throws Throwable - { - List stores = nodeService.getStores(); - Store[] returnStores = new Store[stores.size()]; - for (int x = 0; x < stores.size(); x++) - { - StoreRef storeRef = stores.get(x); - - if (logger.isDebugEnabled() == true) - { - logger.debug("Store protocol :" + storeRef.getProtocol()); - } - - Store store = Utils.convertToStore(storeRef); - returnStores[x] = store; - } - - return returnStores; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new RepositoryFault(0, e.toString()); - } - } - - /** - * Executes the given query, caching the results as required. - */ - private QueryResult executeQuery(final MessageContext msgContext, final ServerQuery query) throws RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public QueryResult execute() throws Throwable - { - // Construct a session to handle the iteration - long batchSize = Utils.getBatchSize(msgContext); - RepositoryQuerySession session = new RepositoryQuerySession(Long.MAX_VALUE, batchSize, query); - String sessionId = session.getId(); - - // Get the first batch of results - ResultSet batchedResults = session.getNextResults(serviceRegistry); - // Construct the result - // TODO: http://issues.alfresco.com/browse/AR-1689 - boolean haveMoreResults = session.haveMoreResults(); - QueryResult queryResult = new QueryResult( - haveMoreResults ? sessionId : null, - batchedResults); - - // Cache the session - if (session.haveMoreResults()) - { - querySessionCache.put(sessionId, session); - } - - // Done - return queryResult; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback, true); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - e.printStackTrace(); - throw new RepositoryFault(0, e.toString()); - } - } - - /** - * {@inheritDoc} - */ - public QueryResult query(final Store store, final Query query, final boolean includeMetaData) throws RemoteException, RepositoryFault - { - String language = query.getLanguage(); - if (language.equals(Utils.QUERY_LANG_LUCENE) == false) - { - throw new RepositoryFault(110, "Only '" - + Utils.QUERY_LANG_LUCENE - + "' queries are currently supported!"); - } - - final MessageContext msgContext = MessageContext.getCurrentContext(); - SearchQuery serverQuery = new SearchQuery(store, query); - QueryResult queryResult = executeQuery(msgContext, serverQuery); - // Done - return queryResult; - } - - /** - * {@inheritDoc} - */ - public QueryResult queryChildren(final Reference node) throws RemoteException, RepositoryFault - { - final MessageContext msgContext = MessageContext.getCurrentContext(); - ChildAssociationQuery query = new ChildAssociationQuery(node); - QueryResult queryResult = executeQuery(msgContext, query); - // Done - return queryResult; - } - - /** - * {@inheritDoc} - */ - public QueryResult queryParents(final Reference node) throws RemoteException, RepositoryFault - { - final MessageContext msgContext = MessageContext.getCurrentContext(); - ParentAssociationQuery query = new ParentAssociationQuery(node); - QueryResult queryResult = executeQuery(msgContext, query); - // Done - return queryResult; - } - - /** - * {@inheritDoc} - */ - public QueryResult queryAssociated(final Reference node, final Association association) throws RemoteException, RepositoryFault - { - final MessageContext msgContext = MessageContext.getCurrentContext(); - AssociationQuery query = new AssociationQuery(node, association); - QueryResult queryResult = executeQuery(msgContext, query); - // Done - return queryResult; - } - - /** - * {@inheritDoc} - */ - public QueryResult fetchMore(final String querySessionId) throws RemoteException, RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public QueryResult execute() throws Throwable - { - RepositoryQuerySession session = null; - try - { - // try and get the QuerySession with the given id from the cache - session = (RepositoryQuerySession) querySessionCache.get(querySessionId); - } - catch (ClassCastException e) - { - if (logger.isDebugEnabled()) - { - logger.debug("Query session was not generated by the RepositoryWebService: " + querySessionId); - } - throw new RepositoryFault( - 4, - "querySession with id '" + querySessionId + "' is invalid"); - } - - if (session == null) - { - if (logger.isDebugEnabled()) - { - logger.debug("Invalid querySession id requested: " + querySessionId); - } - throw new RepositoryFault( - 4, - "querySession with id '" + querySessionId + "' is invalid"); - } - - ResultSet moreResults = session.getNextResults(serviceRegistry); - - // Drop the cache results if there are no more results expected - if (!session.haveMoreResults()) - { - querySessionCache.remove(querySessionId); - } - else - { - // We still need to update the cache with the latest session to - // ensure that the instance gets replicated to other listening caches - querySessionCache.put(querySessionId, session); - } - - // get the next batch of results - // TODO: http://issues.alfresco.com/browse/AR-1689 - boolean haveMoreResults = session.haveMoreResults(); - QueryResult queryResult = new QueryResult( - haveMoreResults ? querySessionId : null, - moreResults); - - // Done - return queryResult; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback, true); - } - catch (Throwable e) - { - if (e instanceof RepositoryFault) - { - throw (RepositoryFault) e; - } - else - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new RepositoryFault(0, e.toString()); - } - } - } - - /** - * {@inheritDoc} - */ - public UpdateResult[] update(final CML statements) throws RemoteException, RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public UpdateResult[] execute() throws Throwable - { - return cmlUtil.executeCML(statements); - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new RepositoryFault(0, e.toString()); - } - } - - /** - * {@inheritDoc} - */ - public NodeDefinition[] describe(final Predicate items) throws RemoteException, RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public NodeDefinition[] execute() throws Throwable - { - List nodes = Utils.resolvePredicate(items, nodeService, searchService, namespaceService); - NodeDefinition[] nodeDefs = new NodeDefinition[nodes.size()]; - - for (int x = 0; x < nodes.size(); x++) - { - nodeDefs[x] = setupNodeDefObject(nodes.get(x)); - } - - return nodeDefs; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new RepositoryFault(0, e.toString()); - } - } - - /** - * Creates a NodeDefinition web service type object for the given - * repository NodeRef instance - * - * @param nodeRef The NodeRef to generate the NodeDefinition for - * @return The NodeDefinition representation of nodeRef - */ - private NodeDefinition setupNodeDefObject(NodeRef nodeRef) - { - if (logger.isDebugEnabled()) - logger.debug("Building NodeDefinition for node: " + nodeRef); - - TypeDefinition ddTypeDef = this.dictionaryService - .getType(this.nodeService.getType(nodeRef)); - - // create the web service ClassDefinition type from the data dictionary TypeDefinition - ClassDefinition typeDef = Utils.setupClassDefObject(this.dictionaryService, ddTypeDef); - - Set aspectsQNames = this.nodeService.getAspects(nodeRef); - ClassDefinition[] aspectDefs = new ClassDefinition[aspectsQNames.size()]; - int pos = 0; - for (QName aspectQName : aspectsQNames) - { - AspectDefinition aspectDef = this.dictionaryService.getAspect(aspectQName); - aspectDefs[pos] = Utils.setupClassDefObject(this.dictionaryService, aspectDef); - pos++; - } - - return new NodeDefinition(typeDef, aspectDefs); - } - - /** - * Gets the nodes associatiated with the predicate provided. Usefull when the store and ids of the required - * nodes are known. - * - * {@inheritDoc} - */ - public Node[] get(final Predicate where) throws RemoteException, RepositoryFault - { - try - { - RetryingTransactionCallback callback = new RetryingTransactionCallback() - { - public Node[] execute() throws Throwable - { - // Resolve the predicate to a list of node references - List nodeRefs = Utils.resolvePredicate(where, nodeService, searchService, namespaceService); - List nodeList = new ArrayList(); - for (NodeRef nodeRef : nodeRefs) - { - // search can return nodes that no longer exist, so we need to ignore these - if(nodeService.exists(nodeRef) == false) - { - if(logger.isDebugEnabled()) - { - logger.warn("Search returned node that doesn't exist: " + nodeRef); - } - } - - // Get the nodes reference - Reference reference = Utils.convertToReference(nodeService, namespaceService, nodeRef); - - // Get the nodes type - String type = nodeService.getType(nodeRef).toString(); - - // Get the nodes aspects - Set aspectQNames = nodeService.getAspects(nodeRef); - String[] aspects = new String[aspectQNames.size()]; - int aspectIndex = 0; - for (QName aspectQName : aspectQNames) - { - aspects[aspectIndex] = aspectQName.toString(); - aspectIndex++; - } - - // Get the nodes properties - Map propertyMap = nodeService.getProperties(nodeRef); - NamedValue[] properties = new NamedValue[propertyMap.size()]; - int propertyIndex = 0; - for (Map.Entry entry : propertyMap.entrySet()) - { - properties[propertyIndex] = Utils.createNamedValue(dictionaryService, entry.getKey(), entry.getValue()); - propertyIndex++; - } - - // Create the node and add to the array - Node node = new Node(reference, type, aspects, properties); - nodeList.add(node); - } - - Node[] nodes = nodeList.toArray(new Node[nodeList.size()]); - - return nodes; - } - }; - return Utils.getRetryingTransactionHelper(MessageContext.getCurrentContext()).doInTransaction(callback); - } - catch (Throwable e) - { - if (logger.isDebugEnabled()) - { - logger.error("Unexpected error occurred", e); - } - throw new RepositoryFault(0, e.toString()); - } - } -} diff --git a/source/java/org/alfresco/repo/webservice/repository/SearchQuery.java b/source/java/org/alfresco/repo/webservice/repository/SearchQuery.java deleted file mode 100644 index fc2173f6e3..0000000000 --- a/source/java/org/alfresco/repo/webservice/repository/SearchQuery.java +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.webservice.repository; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import org.alfresco.repo.webservice.AbstractQuery; -import org.alfresco.repo.webservice.Utils; -import org.alfresco.repo.webservice.types.NamedValue; -import org.alfresco.repo.webservice.types.Query; -import org.alfresco.repo.webservice.types.ResultSet; -import org.alfresco.repo.webservice.types.ResultSetRow; -import org.alfresco.repo.webservice.types.ResultSetRowNode; -import org.alfresco.repo.webservice.types.Store; -import org.alfresco.service.ServiceRegistry; -import org.alfresco.service.cmr.dictionary.DictionaryService; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; -import org.alfresco.service.cmr.repository.Path; -import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.cmr.search.SearchService; -import org.alfresco.service.namespace.NamespaceService; -import org.alfresco.service.namespace.QName; - -/** - * A query to using full search. - * - * @author Derek Hulley - * @since 2.1 - */ -public class SearchQuery extends AbstractQuery -{ - private static final long serialVersionUID = 5429510102265380433L; - - private Store store; - private Query query; - - /** - * @param node The node to query against - * @param association The association type to query or null to query all - */ - public SearchQuery(Store store, Query query) - { - this.store = store; - this.query = query; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(128); - sb.append("SearchQuery") - .append("[ store=").append(this.store.getScheme()).append(":").append(this.store.getAddress()) - .append(" language=").append(this.query.getLanguage()) - .append(" statement=").append(this.query.getStatement()) - .append("]"); - return sb.toString(); - } - - /** - * {@inheritDoc} - */ - public ResultSet execute(ServiceRegistry serviceRegistry) - { - SearchService searchService = serviceRegistry.getSearchService(); - NodeService nodeService = serviceRegistry.getNodeService(); - DictionaryService dictionaryService = serviceRegistry.getDictionaryService(); - - // handle the special search string of * meaning, get everything - String statement = query.getStatement(); - if (statement.equals("*")) - { - statement = "ISNODE:*"; - } - org.alfresco.service.cmr.search.ResultSet searchResults = null; - try - { - StoreRef storeRef = Utils.convertToStoreRef(store); - searchResults = searchService.query(storeRef, query.getLanguage(), statement); - return convert( - nodeService, - dictionaryService, - searchResults); - } - finally - { - if (searchResults != null) - { - try - { - searchResults.close(); - } - catch (Throwable e) - { - } - } - } - } - - private ResultSet convert( - NodeService nodeService, - DictionaryService dictionaryService, - org.alfresco.service.cmr.search.ResultSet searchResults) - { - ResultSet results = new ResultSet(); - List rowsList = new ArrayList(); - - int index = 0; - for (org.alfresco.service.cmr.search.ResultSetRow searchRow : searchResults) - { - NodeRef nodeRef = searchRow.getNodeRef(); - // Search can return nodes that no longer exist, so we need to ignore these - if (!nodeService.exists(nodeRef)) - { - continue; - } - ResultSetRowNode rowNode = createResultSetRowNode(nodeRef, nodeService); - - // get the data for the row and build up the columns structure - Map values = searchRow.getValues(); - NamedValue[] columns = new NamedValue[values.size() + 1]; - int col = 1; - for (String attributeName : values.keySet()) - { - columns[col] = Utils.createNamedValue(dictionaryService, QName.createQName(attributeName), values.get(attributeName)); - col++; - } - - // add one extra column for the node's path - columns[0] = Utils.createNamedValue(dictionaryService, QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "path"), nodeService.getPath(nodeRef).toString()); - - ResultSetRow row = new org.alfresco.repo.webservice.types.ResultSetRow(); - row.setColumns(columns); - row.setScore(searchRow.getScore()); - row.setRowIndex(index); - row.setNode(rowNode); - - // add the row to the overall results list - rowsList.add(row); - index++; - } - - // Convert list to array - int totalRows = rowsList.size(); - ResultSetRow[] rows = rowsList.toArray(new org.alfresco.repo.webservice.types.ResultSetRow[totalRows]); - - // add the rows to the result set and set the total row count - results.setRows(rows); - results.setTotalRowCount(totalRows); - - return results; - } -} \ No newline at end of file diff --git a/source/java/org/alfresco/repo/ws/AuthenticationClearInterceptor.java b/source/java/org/alfresco/repo/ws/AuthenticationClearInterceptor.java deleted file mode 100644 index 509cd8b9f2..0000000000 --- a/source/java/org/alfresco/repo/ws/AuthenticationClearInterceptor.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.ws; - -import org.alfresco.repo.security.authentication.AuthenticationUtil; -import org.apache.cxf.binding.soap.SoapMessage; -import org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor; -import org.apache.cxf.interceptor.Fault; -import org.apache.cxf.phase.Phase; - -/** - * @author Dmitry Velichkevich - */ -public class AuthenticationClearInterceptor extends AbstractSoapInterceptor -{ - public AuthenticationClearInterceptor() - { - super(Phase.PRE_INVOKE); - } - - public void handleMessage(SoapMessage message) throws Fault - { - AuthenticationUtil.clearCurrentSecurityContext(); - } - - @Override - public void handleFault(SoapMessage message) - { - AuthenticationUtil.clearCurrentSecurityContext(); - super.handleFault(message); - } -} diff --git a/source/java/org/alfresco/repo/ws/AuthenticationInterceptor.java b/source/java/org/alfresco/repo/ws/AuthenticationInterceptor.java deleted file mode 100644 index e5ff588f2b..0000000000 --- a/source/java/org/alfresco/repo/ws/AuthenticationInterceptor.java +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.ws; - -import java.util.List; - -import org.alfresco.repo.security.authentication.Authorization; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.service.cmr.security.AuthenticationService; -import org.alfresco.service.transaction.TransactionService; -import org.apache.cxf.binding.soap.SoapMessage; -import org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor; -import org.apache.cxf.interceptor.Fault; -import org.apache.cxf.phase.Phase; -import org.apache.ws.security.WSSecurityEngineResult; -import org.apache.ws.security.WSUsernameTokenPrincipal; -import org.apache.ws.security.handler.WSHandlerConstants; -import org.apache.ws.security.handler.WSHandlerResult; - -/** - * @author Dmitry Velichkevich - */ -public class AuthenticationInterceptor extends AbstractSoapInterceptor -{ - private AuthenticationService authenticationService; - private TransactionService transactionService; - - public AuthenticationInterceptor() - { - super(Phase.PRE_INVOKE); - } - - public void handleMessage(SoapMessage message) throws Fault - { - @SuppressWarnings("unchecked") - WSHandlerResult handlerResult = ((List) message.getContextualProperty(WSHandlerConstants.RECV_RESULTS)).get(0); - WSSecurityEngineResult secRes = (WSSecurityEngineResult) handlerResult.getResults().get(0); - final WSUsernameTokenPrincipal principal = (WSUsernameTokenPrincipal) secRes.get(WSSecurityEngineResult.TAG_PRINCIPAL); - - // Authenticate - transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionCallback() - { - public Object execute() throws Throwable - { - try - { - Authorization auth = new Authorization(principal.getName(), principal.getPassword()); - if (auth.isTicket()) - { - authenticationService.validate(auth.getTicket()); - } - else - { - authenticationService.authenticate(auth.getUserName(), auth.getPassword().toCharArray()); - } - } - catch (Throwable e) - { - throw new SecurityException("Invalid user name or password specified"); - } - - return null; - } - }); - } - - public void setAuthenticationService(AuthenticationService authenticationService) - { - this.authenticationService = authenticationService; - } - - public void setTransactionService(TransactionService transactionService) - { - this.transactionService = transactionService; - } -} diff --git a/source/java/org/alfresco/repo/ws/AuthenticationTokenCallbackHandler.java b/source/java/org/alfresco/repo/ws/AuthenticationTokenCallbackHandler.java deleted file mode 100644 index 112e3a101c..0000000000 --- a/source/java/org/alfresco/repo/ws/AuthenticationTokenCallbackHandler.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.ws; - -import java.io.IOException; - -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; -import javax.security.auth.callback.UnsupportedCallbackException; - -import org.apache.ws.security.WSConstants; -import org.apache.ws.security.WSPasswordCallback; - -/** - * @author Dmitry Velichkevich - */ -public class AuthenticationTokenCallbackHandler implements CallbackHandler -{ - public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException - { - WSPasswordCallback wssPasswordCallback = (WSPasswordCallback) callbacks[0]; - - if ((WSPasswordCallback.USERNAME_TOKEN_UNKNOWN != wssPasswordCallback.getUsage()) && (WSPasswordCallback.USERNAME_TOKEN != wssPasswordCallback.getUsage())) - { - throw new SecurityException("Only 'UsernameToken' usage is supported."); - } - - if (!WSConstants.PASSWORD_TEXT.equals(wssPasswordCallback.getPasswordType())) - { - throw new SecurityException("Password type '" + wssPasswordCallback.getPasswordType() + "' unsupported. Only '" + WSConstants.PW_TEXT + "' is supported."); - } - } -} diff --git a/source/java/org/alfresco/repo/ws/ContentReaderDataSource.java b/source/java/org/alfresco/repo/ws/ContentReaderDataSource.java deleted file mode 100644 index 06e7f69a16..0000000000 --- a/source/java/org/alfresco/repo/ws/ContentReaderDataSource.java +++ /dev/null @@ -1,190 +0,0 @@ -/* - * Copyright (C) 2005-2010 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.repo.ws; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.math.BigInteger; - -import javax.activation.DataSource; - -import org.alfresco.service.cmr.repository.ContentReader; - -/** - * DataSource facade for an Alfresco Content Reader - * - * @author Dmitry Lazurkin - */ -public class ContentReaderDataSource implements DataSource -{ - private String mimetype; - private InputStream inputStream; - private String name; - private long offset = 0; - private long length = Long.MAX_VALUE / 2; - private long sizeToRead = 0; - - public ContentReaderDataSource(ContentReader contentReader, String name, BigInteger offset, BigInteger length, long contentSize) - { - createContentReaderDataSource(contentReader.getContentInputStream(), contentReader.getMimetype(), name, offset, length, contentSize); - } - - public ContentReaderDataSource(InputStream contentInputStream, String mimeType, String name, BigInteger offset, BigInteger length) - { - try - { - createContentReaderDataSource(contentInputStream, mimeType, name, offset, length, contentInputStream.available()); - } - catch (IOException e) - { - throw new RuntimeException(e); - } - } - - public void createContentReaderDataSource(InputStream contentInputStream, String mimeType, String name, BigInteger offset, BigInteger length, long contentSize) - { - this.name = name; - this.mimetype = mimeType; - if (offset != null) - { - this.offset = offset.longValue(); - } - if (length != null) - { - this.length = length.longValue(); - } - if (this.offset + this.length < contentSize) - { - this.sizeToRead = this.length; - } - else - { - this.sizeToRead = contentSize - this.offset; - } - if (this.sizeToRead < 0) - { - throw new RuntimeException("Offset value exceeds content size"); - } - try - { - inputStream = new RangedInputStream(contentInputStream); - } - catch (IOException e) - { - throw new RuntimeException(e); - } - } - - public String getContentType() - { - return mimetype; - } - - public InputStream getInputStream() throws IOException - { - return inputStream; - } - - public String getName() - { - return name; - } - - public OutputStream getOutputStream() throws IOException - { - return null; - } - - public long getSizeToRead() - { - return sizeToRead; - } - - private class RangedInputStream extends InputStream - { - - private InputStream inputStream; - private int bytesread; - - private RangedInputStream(InputStream inputStream) throws IOException - { - super(); - this.inputStream = inputStream; - this.inputStream.skip(offset); - this.bytesread = 0; - } - - @Override - public int read() throws IOException - { - if (bytesread < sizeToRead) - { - bytesread++; - return inputStream.read(); - } - else - { - return -1; - } - } - - @Override - public int read(byte[] b) throws IOException - { - return read(b, 0, b.length); - } - - @Override - public int read(byte[] b, int off, int len) throws IOException - { - if (len > sizeToRead - bytesread) - { - len = (int) (sizeToRead - bytesread); - } - int readed = inputStream.read(b, off, len); - bytesread += readed; - return readed; - } - - @Override - public int available() throws IOException - { - return (int) (sizeToRead - bytesread + 1); - } - - @Override - public void close() throws IOException - { - inputStream.close(); - } - - @Override - public long skip(long n) throws IOException - { - if (bytesread + n > sizeToRead) - { - n = (sizeToRead - n) > 0 ? (sizeToRead - n) : sizeToRead - bytesread; - } - n = inputStream.skip(n); - bytesread += n; - return n; - } - } -} diff --git a/source/java/org/alfresco/repo/ws/PasswordTypeInterceptor.java b/source/java/org/alfresco/repo/ws/PasswordTypeInterceptor.java deleted file mode 100644 index d30fcd439a..0000000000 --- a/source/java/org/alfresco/repo/ws/PasswordTypeInterceptor.java +++ /dev/null @@ -1,62 +0,0 @@ -package org.alfresco.repo.ws; - -import java.util.Arrays; - -import javax.xml.namespace.QName; -import javax.xml.soap.SOAPMessage; - -import org.apache.cxf.binding.soap.SoapMessage; -import org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor; -import org.apache.cxf.interceptor.Fault; -import org.apache.cxf.phase.Phase; -import org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor; -import org.apache.ws.security.WSConstants; -import org.w3c.dom.Attr; -import org.w3c.dom.Document; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; - - -/** - * Interceptor that by default adds PasswordText type to Password element - * if it doesn't have Type attribute. It should be done before WSSecurityEngine - * processes Security header in scope of WSS4JInInterceptor execution. - * - * @author Viachaslau Tsikhanovich - * - */ -public class PasswordTypeInterceptor extends AbstractSoapInterceptor -{ - - private QName securityHeader = new QName(WSConstants.WSSE_NS, WSConstants.WSSE_LN); - - public PasswordTypeInterceptor() - { - super(Phase.PRE_PROTOCOL); - addBefore(Arrays.asList(WSS4JInInterceptor.class.getName())); - } - - @Override - public void handleMessage(SoapMessage message) throws Fault - { - if (message.hasHeader(securityHeader)) - { - SOAPMessage saaj = message.getContent(SOAPMessage.class); - Document document = saaj.getSOAPPart(); - NodeList nodes = document.getElementsByTagNameNS("*", WSConstants.PASSWORD_LN); - if (nodes.getLength() > 0) - { - Node passwordNode = nodes.item(0); - NamedNodeMap atts = passwordNode.getAttributes(); - if (null == atts.getNamedItem(WSConstants.PASSWORD_TYPE_ATTR)) - { - Attr typeAttribute = document.createAttribute(WSConstants.PASSWORD_TYPE_ATTR); - typeAttribute.setValue(WSConstants.PASSWORD_TEXT); - atts.setNamedItem(typeAttribute); - } - } - } - } - -} diff --git a/source/sample/JavaCmisTest/.classpath b/source/sample/JavaCmisTest/.classpath deleted file mode 100644 index 90c1c47706..0000000000 --- a/source/sample/JavaCmisTest/.classpath +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/source/sample/JavaCmisTest/.project b/source/sample/JavaCmisTest/.project deleted file mode 100644 index 45174879fb..0000000000 --- a/source/sample/JavaCmisTest/.project +++ /dev/null @@ -1,19 +0,0 @@ - - - Sample CLient - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jem.workbench.JavaEMFNature - org.eclipse.jdt.core.javanature - org.eclipse.jem.beaninfo.BeanInfoNature - - diff --git a/source/sample/JavaCmisTest/build.xml b/source/sample/JavaCmisTest/build.xml deleted file mode 100644 index 8e73d0cf6e..0000000000 --- a/source/sample/JavaCmisTest/build.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/source/sample/JavaCmisTest/cmis-test.bat b/source/sample/JavaCmisTest/cmis-test.bat deleted file mode 100644 index 547a3c8db7..0000000000 --- a/source/sample/JavaCmisTest/cmis-test.bat +++ /dev/null @@ -1,6 +0,0 @@ -@echo off - -set CLASSPATH=cmis-test-client.jar -for %%i in (./lib/*.jar) do call set CLASSPATH=./lib/%%~i;%%CLASSPATH%% - -java org.alfresco.cmis.ws.example.CmisSampleClient %1 %2 %3 diff --git a/source/sample/JavaCmisTest/cmis-test.sh b/source/sample/JavaCmisTest/cmis-test.sh deleted file mode 100644 index 2617c419a3..0000000000 --- a/source/sample/JavaCmisTest/cmis-test.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -export CLASSPATH=./cmis-test-client.jar -for jar in ./lib/*.jar; do export CLASSPATH=$CLASSPATH:$jar; done - -java org.alfresco.cmis.ws.example.CmisSampleClient $1 $2 $3 diff --git a/source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar b/source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar deleted file mode 100644 index 8f5e3fbf371235b36fa0618033bb2acca17b9c00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 291779 zcmbrkbChk(vn5(}%C>FWwr$(CZQHhO+qUbJdCGQGf4__F+i$!+x8Hbs?6vm(W6sEk znHiChYb<#wAYe#KwVi%Lp&4}@=!DB@(}{`2e0@2N4RDIuzMcUn zg!)a8)p&*U`uqM}{Q-|lW(rt&i=GSpz~%*ZW*^ii9wryK)y`5?M&U_L@t_7wCv8lJ z;1@0!!D(B6QSjJp`db$!Ukz?q9Q+N|e~JbG5Z0yfzv&D7k7!1AHgx}I1o(d-oLp@G zf`a}pD0ds{zaY{7A4pRJCua*=Q#&UU=fAKB|H3k`HnVfIa5n#26a;_e+nXC0{&jfl zztD~UD&OCjc8+F$37P0GWB!Y2U~gb#Zt@ocl>c`I+)W&fOq~8=hwlHA9T#VdzfJ$& zCeqQw$TOZv335Nh9v);1ychfXFErazxe+* z<^Ik8|3-P-zqsIRXJ`F4_y4Bd|Bqo^?Ticz{}S@Qs?*<-5Vt~g6CMf;CVN)P}5 z%>NMoRm}fYs{d7l|Lf2KhEC3o|Ew{^|Hv^x7h7X%6Ivr{11F~xRVybX6?9+OrVbh{ zF9K9Z5D<_><{3eO3jCoW)c*cfQ*kT{*C zP3cRFFqtg26JO$v?<2H%WsFoglaCqGM!hkipeybNkK8>n3%Wl0Jk8Lxe2Ah7@ zAcQ_oWL`i`p-iPJonm;8+8g^6UGKQPcB>p8@mhAZq8o`HeWYPDPi*=mx+dGC&8<~o zZEH2MV$&{Ip-gGCa%=6R$RlmF&e=C;SE$JJU1!Es#dcV{4Z5;f@uHo)hSG6Y5!yQS zslHHp6NXcJ*f=mC6eLW&j4i%o&FswfS)$Cl0=cBh3sDTUpf9zAn;RSg)`cgm*GJgB z(gtYmpqjWbk46#n7(op1q!~QV{0d3ztjA#@Cy9g0ar|Xcl%oLl=XdP!TX(he?3fDC zYz;+-C^>0)KElXitC|-vmJ}yZ@m*p1hG-Z1`~3oXopY`j?)AslcvM+^q(k!OAM`hP7FS4k_e+cc25{=q1k>DZH8N3Ub(~8 z0FmsZL=qr9|C8{Vvb&Oiy86NS4NY+fM^)M?M~$M!(dF5G9Br0c0$xM%uRgN@`%f1a z6LuMOl0ixYRf<3r$8Rt6%q?H)c!+QHbf@i?8X8`uhe}iy%9aXPHluo7uD&~?d?mWF z*HRTX;UgEeI1@7~_|W3M!}TKv0@|!~irA*;AMs%ygq>wIUVnSp7N*CN>(V+8EKdhy zj(H+TTb}W8z@jEu#!NO%x%rvmoP}I!ZlDhmdL9WYO8D6PI8`F%ev0f;o+!85TE}ZB zX8&iZ&1Z8ngk6V5?x3d0dq<*aJ994#(K4L$Kv6!51^F8gX$+oVCrJGmYL-nd$PaPo zOQ9@0YFzw|wO=f93TVH|13dsf8kQ0aWgGR_9!zsxe7$!1b6;Dh{Ob75puEm;E@6n{J(dPh!*{U4uB|d8zo+41?u|pZE zkHK&kqw*5=-Ap*4RlUOM9fpaLIi}}x%M7ZQY>B)#5is?J734427*jc!VJ6}6b11w5 zsHvQ+Nzm0aRifa~N#VwB$_b?B&X+43R8u;neQr~f6R?D0K(xfosut%FDWxljV`y7- zrz%^09F$Ou z6CXvvQ{>22y5G%jXzJ;4eYf~{kj+o|vh8V+0W$TQKJBaV&{i6`(;@m-15!{9`sHx>`7n7H``jy6P$(3q zCp~Ri6ld&SdA~i8<5_z!1P(>B1g_4dJKy7D=V@9^_Ya$Hz7ZeGce&cfH=Oc~Ck}rQ zkhzCJ3J({WFY4Ei0laCkCnld8ek8M|1Gx7Ox5#{OF>=aB@v`_EJB4OU12#4hmwRTJ z-h8WxD?Z}^5MhS$l9+IZM;X6GErp=JL+xoo{xyYkeiAN^|3NV&@sewZg_=0N;FfL{ z>j%P&%e^kdgDm4x@}w7cf2hZ?Y-|5ZoDw^Zs(Vc)u;>oaGtQUI{Hm?r$FvLB9nG+C z>c>Nb@;{+w5MxuLE@7^;{MbAJ%kAT$1?*xB~tN|59AV0QbnDmz=s;%lmXk-bz5WFr|b&Cj$4x1xG_o`okXkD${aJmvT+^W%iA4-xwcCTyby? zLD`#}%4F3!^+7R;DRds6O5vaX*&zMcE%=-#3Hu; z{94$W3H;|VNy66N#aYSO(Zs;!-}nC#WgR;#5o8{tIwtp~FZ%%yO)i^EfLNUaekp%a z7)ePg4M>*CD)AEWCr_R%YxTL%-y5u;kU#l+{`bOqUy2km2;%2NhYZ%ejCQR5Ht|T3pZeN7ow*J0@;Ap{QZ|yS;%hfH*FPJhU*GU`Rn|Lzu z;{oSsS+E+fQEyQuzr+n%iB}9>^X7^K7NNsY8GrO!Q1Ant(FwISDIL()-E|#Kz5j*b zFwJyC>88d!%L$#)MFpMhFDfK-nA3~6aJ8q}n1hfAqn#$ICmxzs;y&-3EKk*N5m{ey zDUaYo6)q&Uee2w%s=0Sr>a*Kwk4;96e9JoqhRQpf975%(-tPfrMn6GcaQLT}X6=H_ zX!nQtwit20UO%)V$UpQl^2)S2^I8&q%9c6$K)u->#W^_YM~uyqUg8Ag$xk4QC?uiP z8DkbFA-=$#?lsG}Othi&Vi7da7TK8HW8S?Ak3t~i=!(AiL$-d!tXx$U?pJ1x%zk;u zC?9`J28;CKm{T+_y=1jq@JZ5qoPb>by=8)GT0#LDeN~H@{>te%cZmvU-8{P}!(LvI zcx#DGI(y6-(kv6ZltN}fjP^lR&9(m(eit7GpP}LIjtwHMMY*o_EC=bgD#1*T5jEHV@r=tGz=_CZ?1gK4xD5~vkUC$ z#E;tIgpZ#<)9(KDaEte$w60xexd8zCogImfTyr+ho3B z*dJO2`v_!@U^WLprD9kMre#OA6-BM3qZ#5=EMt>~==5jlgi$a_vs+a~1CTnBw1`^1 zuM@qHJF@?^Xa4J{Rn&C8tn)w3I-xfJz~2sr|B=D}o}???9^S|z?|k3NDtJi~02288 zHLEx!Q%#qh~S~X674JW#7V}?84w)w`S_H$?onjA__zonBE%5j2Mty3*Php% zxLw!#owaSX7oAo2KDmE#b8{zxhrcfI`tsd4{jkL2O<{Q^iDHY7uC z@*5jayW~s$%x}WW$ww#QQ*eYvf=#BEY@ZE5IxqpLJ=1m(^g9%Z3i{SA%MNmMNOn@B z&2^-md@9oRn}o^N{zVdzOg!=s;0=GANP!_e0WTS*xZAhYaN;W0{m?uHkRPNq7d&>Sw!8u11dY?lNhj9SnU7Lhv7zi90 z9^)a)n}^2r`YR{zPw+_h@C4euA{bo}W>opL1#E9RW^U<&BU$wkN;0*>eTg>)f_m)( zifp;@PwXibOhk3z!IFz_C{pEHhO+kgURA|>)dP#{?E@uP-D<}i#8Y?Zq?L>AX)r$C z;hwK2UsO7K)_O(UkS``MJNEf{O~Ebz1AK8V=DABv5Zi(jQ%^IyyA`(H*jzy(tK_Ou zV?d%4&L=n6u6Q2X!pGb4&j~yBCJ3xA0g4{-SlewB&L^U$?w`Fhg_asv-;N-?{XMnO z0_OTZDvwW=f37g!eQSdB#7MTvk37Np1_tb$Z?mvJP2WAEg6!OGwJ5x@f_8DoZuZ<3 zr(nT$&yU>hbR5_xyDE-w!TQurUpU;mkZ>8JPkkj_xn6;U-vvB3geHWNxi636ZhK_E z$#=^h#<0EnkYF)uIL*m(k}nF607$?nJhBsoWPQ{51UiU>pClx63sL2iHkgt>11moh z9p@CUIRI~2_3v@#FBHK1b_Vq9Z_y-t=@jl8XY~qB>#}cA?`~0lSV-y=73HXVPxk7T z9$*OHO}YJ|enN$xwIp{+8+R2R+^|1&3{QE${B{TYZjSu+@aD;X#5?#D?#;k{pd_w@ zB)=sm#5jMlX8Bg%c3r+9fZPo7Db=swmQPmJK(jt+Twq25MpsksQ%UpM0s^Yo;cr<` zmc6pFd}g3SY4y|%A3p1q!BBP^ag#v}gV6DETd4dz!aZjTR0D3lEM9IEM=P zwjher)Tn7`bJR4nH5J<1lO2z#CaECN2xA&WLZYZt>BT8Irn+XcbZ%glO^L$BpC+K+ zQGkJFXmMJJA=BdizSP$`a zQZ6F1U_iT{ptDl~^rPBF;u874t(~PlXK2LP8yZ>gCDhPBH9u(@Kbj{=^=N#bSrjai z5tx_KR~gck6;Z6mZEazU+gO&(*4(qSJ_9h1@=3gKVo1CY5NsMpTfU7AYZ@lh4(+OL zYb(TLd3Y4#p=lFc9x^k#FG%uwJ@H_AmbdnpAf$PD1C}&M}Ef&!DRxTk~UA zn_FM4lNG6|{&dUiP+~J~N<+CS$**CuZ+&_$-hC9Hes8YoTR8zDCg6m4Vj*A4Z0hfd z+M?TsgVt#aSqiUWegfJ>#Z6apu15w_4vO5R?ELu?nJ=-ca6Trm{GNFh)Q1@+@ZC8))@ZDoOfhRMP+x#T3|u8F*Rvv8L!YNu4Q15&snJ%K_|bZD8`d$ETluc zxg*H(k7rs~7hfvuvD{MXy`)Kp7-MKF+qhYYOUbBN;|ARDZh+{IZIMw@r>L}LilNr( zB_SmsCQcMdYK(Q(4h|!qA<7{|Qz2E<+R6=sqAI~LUF`B#RzzG-`5r86o>j#;86^-Y zR-ZI8B)yrb2mBZiQIxH%%hGk#4{NI_ZLBOHRwcX|fD=l-6>zymANeznV4pNi7~#=( zQW)eQ1D1Gzp?rH(Ha6;qR*W+E6~H`oz7)S8d$K|#rE>7T+>GNGb1sDJ(i)`(*Y3^f zl^9hO%YZryv=wclH^&JCP5VrzGK&`|Fh+!jEZBy9TM}IANea)wtvg=Z`ID0oK#~(1 z*Hn#!ZS0s4nMU1&wg}dp45W>5qd7$-11R-c?gq5%ywMf6l#+yrTgf52Kg5bW3~gQ{ zff@|lyz!8+p21c}E2~-GiklJ<2j!>rEl1}>>=LPk)^Flm2oL-VFc`?#H1NO>)M#WZ zZ5b$&5#mu=Ro*aX-pu3g80tDVVFi|2Gj=oqs4!~bCDbAWk zPi-Cb=pfuB17%t^%xa+a$}fp7b#vrf5x~;6Z8%xU8}yBX6IeJy>9##v-kUg!odnHBiRe=N{d7TrEUQ!Q;FzF+k z#e#ERp#hea$Ex3M_T}==sluC~;D@w4<6>mb6Zs)j@5>*2&8$8KE+iB<0ohDh7H>{j zPWo7BL7>9p%-rnPOF@joB4wEjqcaeYu^tFt*F};$1rxG@7I_{q2;**GSv$8EYhka^ z370SG=lcnlhq10TMG}T5aLy>81rHX(C#R~dyoEpK!$*sT?1?gECube|CtIHHmmZ>_ zqDhI+JgR(XAxMo9CG=97=o3dE+9}aAGE9@x+!00Xye|>5_-cwe;7z>bz@VU^I}Ykj z=}U`01Q-hCTuAUMBAWyd`YAa{_2LbvSFsW0VHfp617}u<%1Gg?l2@I_3_gyB9{0Ma zzq!j${rQwxX*_pFQW$cn7cmerntH$fJ^jrgk1F+H8HG{)(y`QiB2xN6W>k$3b&?N0 zrYDS~oj;Oj5~m|h6tOb*m^YwhK@9rD1V4FTusU~45UC3)iS=8SQ{#a#S`M;WzoVRD z-Cw{}WFC5AC0YdpS*L*#*lFt0SZ|S1usiLrjKAg58Ui#)lwtPA$IcLtOSYV+mC?{c zOACrVGA1OP!+Fas?arrnPD>`=?0wb{ZzNT`owKgDVYX{DOdEL}6~6nQ3sqK+HC&M^0h*p-ktEoqLsSmWG8*;g()vRgM!ePq= zS(;i@;Eb=4qx>4i7A8bSsT#}Qaf^@_k&ob)J>A(fw>iFk+OGlEsKhh zgKRw^`AS#s2--cg(vGEQLvnakM@z%PdRhJqS`IM@-}*Zh4gIg=@o!RLwfI=v1+#z| zZQ1bJ9ith7{Y(@W8D71!t_f#A7#BZvHIeJcTc^Vw%+Y@=HI`I5$`;N*_y&rH6>M$C|C>?VKHPuA^W;sMxDbCXrOt;qmgh-NAZPv#RGgAbVy*yGX+EK>)rd~W$3x3{Em%0^`e+|$o$vAl~@M~`pt(;2OK8?hEe>TurQGFeL`5RW4)Y*C1hfE%>z zI~`lRHg!;pS^U!j>Ll%I9*lhhYU-IGMEb4V20xnAV6dNPhd}a2HjHb7vGgmNb$Jv_ z0dcHo8KcapUgxWtbwJd)@z&{Ijr`!J9&Kv^`R}3D&UGK**R`LP;t{_WO=nWg;YEe8UG!cLe^GTi1T$Ga{=qvYW!5>P z-G_JRwC`MhBJM##UlQR)DP)0#On4F7+idR*p<}M}?L3nk2Bil;vl_#FjUxp7q8IKM z*xi;6FeOhkrf-##LLUm85#C#Zefp}86x%hxF1A+J+Q!a+J@(<4 zGjLhKfRDw7q^?5s85gQRs2H`CwQYWZ(OMIoIcWMHF@#yM(k`!*2a<=XwP7*of?)@N~XtokGzX z144)Lu}`5Z8*$yAp{3}YfrGXl;eDbtO44k<%#rBsJo<^?=Xqy0BIj zd9oiyvTtE#EqKusQp=x1myV%Z;fe7PjiRgJ^wpGfMfcjW5as>Tn&T$xY-15@F<=HE z{Zt_}&%>fWAID>HE7D}}9lAqXy?DSSnUk3zk0ozhsMO?RN|RO;$ZN~Np&5YpH%~bM zv>UDD#iNAiDA4@!TeQvNdU#|6oDiwv-Y?BLoJT?Lqz#76*Q(28pfF-?q&z{@I{Opt zaWmI>KBn(22OVtMJI}&<$;Wb^Ss+neT<@$4GP`ZTqs<8IBNyW_MgPb`GKw-f-ST5ERh2-jB~DvL$vylUl zZqBaD_COb_K-^X^geClpE?5@B7hwiD5((|-iAf_vq^lji{MNYT&91|SRT>w_#2R(@ zIb)h{kWHPBHHtJLnQf+!jc)duWwW(qE?3~TX--QXpB~9n3w;iuJCRIsn%UN%a6MXP zI?SHj&}v2YNTCdVbA2#gA=fh5PPar9KDMquf?_})e^Uh^iY=R5^T3i5L;yOX{5DeJ z5v8U)OE;aR)sD_0{mjxz(NDz+i*OCMgK z-XC6r$^wGrBjX&(*CR)c;PlR3fM$@vvp6%uBDxxl>Scw_svEZ3?Nb#UT$hiI?hT`{ zSBk;{!24su+m|+n{L1zTcJayoa1=O~GyfhyEbDd6wdK-|l_dOh=hVxpZ4G zzftaRW{}Q%yjW$26V&}Kr(5Dh((?kG;PL+MV%+KF8?N-@I}>3L6ui= zvSh=%G<`EPa|-^DF)KQGO8(%}{Dy7BJC-@;poj};LpEs!iY4c0i0jREJivJ86L{rA z*lV`2({$&Pc;&;mm|?h>WjSe=`8K>#?ww1VhoWx8nH3;7JJQw%a5er*`|SMJ$p%>(K0YQz|4E$ms?#&5qKR#2|Hek@qWjrjprKu99e!AGX|FRfK9GMX(mb@M{2r@g~fdLzIs2n~_Z?MBO z#D+EeQK2cM0#%eeQI$I8a{YdNYK;GbI;VEOXk&)>kV$mpjA7F;$~?y!5rP-BA|^`X1gofWR6+0B+4eZG|lgtx_ z5L)O#A~tr&QBg*X>Xr@aMvd&04;o_y^GSZ=PQ8q3^MK!g6Tfm<6og<|yDPzr@`wNpc z5fkDf)}o@qOpdgz9Ccu#sp-+wF%#qA=AyLG6XT3f9;W$M^KI^NV%3-akFe+%Gczdc z7}^#@NOlPtv7XH1)=Xnba-;8hK=I)K`3igevbOxKcEP}|NX3m=2;Q~<6V_bQ#%+SQ zT{EOb-cq7()+Dkl#6>FRdZ2zSq<%!3C&NTZ=#c%k<|u57Np zaIinR%qt)Bb(;q4TQ(QY!7JzBuAoE`u!d%Z)*YA3;f*DlWbT{>+tbUz&VS00WX;0} zDz*&v2*%YN07l6S6im^i-5EO{c-G&9$gjc>v~U9ktm$IE8MIEx(sQcL$WnrNtXq`1 z!aU*wqTOjkYX$jAxE_^8rj@e|NUsB>FPW_fNH<=2Bb@0wfk?en_mCcxRExY@=~sO( zW6WKg3z_Xx4ZsZk+098D!Nq*hN%h~5U4eNr&nw_yWo|D;z z27e1W3*@jJQBADYmr&nCE5r`q2_n6fN`6&HUU~@MrQ?V6!dTp(q7UtX%(!G3H?S*Y z>IQjO->Q%Qf=z9D*^_?eecb?K$NE7qJM8NhxfE*8{DQGH#v77-rf6=O)5rTjgl(+b zOS{CoCHz3$G5iU1+jzM}_yFWJ;v0OqOfQjH4mYvf#Vie-za@Dvh!rzWT7qb;m=SJ9 z3-)Xe^nW*B-PZrFM z_%N_VLq4Hww1{+sj|8Sps!>EPlKDfBPS%xK#|=0_C2ZT%N{T$gz7e6y@Ln&2B6-LWPpJOzTyoJ{HAYyAhhS0OF6;_6V?haO1QXO=$~3( z`3K&KoWFMvIRz_lnoj5fDL*r3WcHf0(lgs0`lou75%GbZVan#!EYW#hmRzGXqzKCw zlV#&!fA5G$AD>t0Ra{B|8z(V4X5JtjL}tid5eqW}cG;_bZ3pdn{saBehx(Zp)QhhG zu7_;&tY_i!3$|FiXRgUJFDNICm;BT()1?0u&SR6#p|ctZmBxz9i!s?dv$;$uFS&YC znH$@A+B1GdTKp8rfN(BQ!W%I=&_u+$GUloSb?bq;^^{;M$f&+&)%ZiVSk^jC!+Nf1 z{aLu)2OPBye--2|RyKB2eF5o1XW{Y`|AUO+gK1AV7i#HEIz7&$#5*?T3o+`8@t?18 z9|h>gOsUg#D0}t{U@m;q67(|{xSdmSF-ZsI+(IIXU=@LSE3+6AAhX6rut^8y>byrR zk%mGwW^6d7XJl^k5ifdbpvnyloO1_<{08AH@b*!=ta`!)H!zi2aXE!&B$I}eEAf(= z8CvyZjGJ9paI(AiRU37J09kf!2I4M+nKc4=^+A2T>OnF%H(rPe07N%D=pCW+g$I51 zTo^+)dg(3V_&$^YD4obxTERD(00>(i?S8LjAQjfI!{u%9DqR4#pyK>XBZ*P}t-(=a4SBp`Qu`jEF|xLP1nB242jGI{P!M z(aI~l6p=u!CB@B)27$%4Og(L3!9qfR-uaJN_6}O+^FC}4M$Dm3!nOz@A+5{{cZ>x- zq^kv@-aix=%y2`5p}(jY9>>b}r(Nw8_62Sk!5N;1N`>7m$zBDWEXk@h!Z#=x8;0kb zBSWtIQI#b1lGXJbQ-tJu3|-WdBU{4uPVPJlzbhBiRbmG-!`Np#0)6PI?sN~OhyMi`2kX;PKtMid`C)?Jkz1fA*{oU znK-$D2T;ftM6)p%UqXw!S%cF=alDyb1f9s5FJ&|lO|?ajyKxk3*<=ym`lY||W#Qlk z2*1IrPvQtWuiCIbh1o&SoPH99tYSF2sWwzjZd0?MN}U;tfPIh*BZ3oyA6J-W;9dEe zOJyOP2+^Xj*FZkwVH6i-W}t(8M>+8;$Es>@Z|Lu;wV&B7kZ96GLpiPE*|JAy@ul;<*GKOf_(o|u)kG0| zcF48BL*kYsvo0Rq0d>j}oEg8rq?u#W5*@+p6Rh~eB)wfT!1aUs^Qz~d`HAj&S7!qi z;Ik^+5~pJ}X^FQLii8=LIR8`-Az6%pfNO>*`#f;6OpOTlF`g{jJ*@1{bmzwV4ZDA% z^ZAAUvJG&EuK#jqhxZ+Oa3dsFsaj&k-P zKNN}xjn!yvkvf($9=o=>^A^(Mf?Fl1#}&7dYUUqL+_^Mj!MYxOs5BCqRVmu63>O~bk&eOMMPDML-#z-olKRraVJ=788W zmpwy=!n7f4*xEHKeFzuX!@6$V>_eEqOB=ai$dLD=MZI4aiR6+=VX_xKYF*8+0R`51 z5WqD^8%D0hQCFNrZM@B3`jkn~c~+1B^@HF<+J%UUIUpnhs>n)w+@LK1K=5b61oeA# z&n}WoB~zb^x_(28Yx*+FVI!3&E!Z?Cw>6}2b>5JJ(t#uzp-iZh9jH;5WE#H8pi~`* zN*IQ+1=V{HuI9j6o$k*<0Op=0LOr|*NIQ(f0zZv)2WhFfEo1~JFC*J3t>g-8g0!VI zdsb*)!)ul}_F@8PtZl6r%ZLEbS~P)~S1cK}BM0_#vM_1!#}jQV_E{J#fLVCd09~tKP&>AWBS`0CN^8eGp%ehx2y*|-CF&AuuK?gY z>pS#$_s5=M8(;;Iw1E5`2drPzZ5xCi-LEe%ae!T~ZBXSaum+rWgNrFn11qkxWU41) z*~?(W63j2Z16?6b51$$zY=zn9Vv@#O2m|)ajKW~?5^^sdTL?~@jE{ZC%-&LY3FKE{ z-%E&K>lVRh9}#BciISrAP*rc9%0Hy+65G&FBQ)R=TLvZVKs7J2>}r?(Qp2+C(%V2U zkstd84Oj$cfbKHf;C7K=`#g8xpDNstyHR85@Hp1NXNHF(0#wC1;R?eTjPX2clfR)h z7Vkks6M>8|a1N%yGXPFnmug{tjWAn4FFah-fK!crzLQpBq0Dm07_~3bgF@HE{A7#Q zgwGP+y5Xgo9oDJW21bV$4}Hq^`FTDMsGMk%0j*j<*l-zeo1|Dkz;H1f4OVl~6!@B< zGu6V1RgyO+pXsYrdg?n{SeWaf)|eZBSqoxqf~`4Uc*?e4SnSu52yHe8`%lF4(iCir z&bRy!g~nb`|F(SjL;qXzGcS9zShQB?Xx>4wO$ao{@*i%$QAO{sihZCmz! zXnZzw+?H|THXNJcYq|2+efN5b=Y2nVi%`xk@>K-f{Ak82i01*FK`lFES>$PfbT@d+ z0m?eHu1K91PAhD-;z9UZcnXQmeH0B<8RgdxhUD zYee0K>K)7$!S?_z>h3}DH;E zG9b5{#NM$aVx0o$9jgg_p8&?>jZ&z@952qno`H6-q@Sr%wRTX-mcg-ZKt*WVKh3ZH z_?Cy+_!fg(7x$XdTMFSVJm(ip=0H=I0lrpWo2UmvnWB9?rLJ>65hH ztqG`1BaVG-@K~16Z9AOpdEnL7kY(4?PoO)3&o=7y;qy4}^()@ff>?HQ%PZdA5j2J& zJ_iul;RMjEOy^Q#6HbDtZ|%lpINofG%~8WYnR3Kn8OFJbVRO_qf5}fFNR$WWl!C~v zq7fdd0~sTUQCmH^&`zaa)QC*0k~%OmDe11tfwQAL>%U8`>#nB(BlQb4twxlv_O(=~N*_)m(9byZ`4jnb@1SIWb>fC&*-wY8}n1zNpX3e?8K zB6k_N>aWB(HEsrkqOcamXYq)UO_b_#u8$V7J4XZAz-PmB9Yrtl-*) z0(*$TQb51ZMw|z8P=RL|2yR=*!7m#H_I~9D(fHSxc6_Bh{rCXIM?oB`GW&1AA7Aq) zcOfa*f?*En$QNt_l~KJ20<7Jmk$3HT9t*e&dw}Pv;x-g)S)q3JpdwOtV++-1e=E*) zlQ^V$0LY=aPnz27k8QUJ7?x^*>RwxL#rjY@lkYbHdnAc%#Bsa&L-kmdFM)gl!lTe7!5~*NZdFZF z+*QOQypy27JGS5(Q1k^UtK2(~@Qq~Tk7q6Q$Dak)Z~AWA&cZps1HqE~*=MfCfMa({ zW_Hn18MJfKAiQ$D+SFXSYQyH~j+>oWEvA`NcT;al0K}~GC ztN+|#s;bSfbzC9w9CZ@8#1jqKh&0wUl(dc*ERUN7A=ai)2#X9Qbz-n_n%QTlndCR* z!gCqTMq&N4(Z{=Nh~~_wF<9|1DY^@1S*)l>G+-JhYT}B+p6b|;{R$A$vh=tTS-+wS z;qswZQYK7VWzwFj3*&Z)Y=El^C3iutxsE3WM47}tVbY3GN8mCLM|y6LJxh>dz;bO! za%_o7zA;Emo)WQu`En(D2>%vg{fKYg2rHT4y)R~za%eNb?Z7%XnhCeNlc^w8kY3o_ zejubdOo%Yrpp zQI;S6u+Rs&XY4|YT=}3Mz=`KmgYHuUtXc)NPu+sNT4_?RpaYCnRW{J_$8f!ZHstH| z%E6@r`O6S_Wh8#`xk%ha9SWpcNSCWT&_of(xHgR11)Fh&0r}cAM-c~U4|A2oEz5Dw zu!4|;5|UkC2O=lb%y*Rmyg)jPgYO$cEN?4&Xuwd!1Iw`Y7FVfG4K1{y6TwT4Rl&^>n4kRgQ$e`jkLJ)!h{xWqj(({^MUG1Kpyc?6kekciemB^|S<$^)96 z!*e`f`kN!(m6(?@qr!WTp8XTgOGhENa%{pcX*k34z}YhdYeC1;B6Zdm!c@KCqvye$ z_8#yFI}X~m?C%5|BqwrX5(HZzOXruh_0e4rEy0@=XIpHy;7GTLrW=Yd9H^4t2V)R~ zPXNvyq|W@>T+omyi%YNgb|^P#VXF=miL#Wlzrjp9?8u5a+X>I_XxSf&$yRzc+da5P z&q8aPaAQR;rtk%RLk=xd!3)*~M*Lv`$6Fhu_~RmOFef2o=g)9ij&W@hMNo5Uvlbfj#!5GR@i_lF zO-ND6z&x2zkx(Qohnpk`WW)CyRjy_8=L^1$*T452KU(djU-`)(y@WR~Xv<1w&4?kD z(=wOtbfi8Njha-CRmC$E*e__x7q^0g12DMMUUB75Msex_*HLX_aNz=Cq^K16V9F8F zHMI#@sDDEE%}#6a*ZKpln5PRjAf=(E|9uIU`r5yes zAB67{#+2W~KJarP#dnjm94=JIWr^)ejc&dFfeRD9#+AdC7!%hFx{Pl1!Vx)pwsFWP z6Z;Zty736QjA>)yDu`Swo|mAnv)WNO`}O5VEqEANbVqaX=ihKb!f6VNY-a)L@`bGh+u-0q7 zfqY@l`WIKh6oaHs zbR#om#KrnpU7Tw?K5lT%=|W?5V@iseb)AI;qn8tZ%l{6IOiYQ7{ljB{-p6AU!OO8& zoi?ATDcR1i`biSv(`YDa+8oH}m+Hz4dY%c1kqL^#40dGYAYaL0(2xoMv&nD13@Vhx z3e0LHWRS%QZM(Q#uY(2XW^rDxg#{63RkWwJiSDk01!iY)xbLP}>cW@~r=iFNX=#?Z z91Cf)m$FHq(Q9OJiZhkA({Ov3W82Fd-eW1_8YFGJjS?HvHB=N5&4YiS;I>-B0El3f zM8>@fRcPoHeH|B6PA80C*{zgs5>RO(RLBaU*iu2S%7x(Af}Q*!Q7@eZXlBkdP&N|? zvuWKfo(0rq?m>Rh(F$&n7E*-;qb<_u61q%i{mugA2AkRbfa8cgm^0VkK3bFR!KvK` z?+5p-eHj6OHRP?gy(2@q7`SHil}5OCHj=x4RzlA1d1p4XAQd{$hpgId9peLHy`VZ!vYBDuq6)!gS+%gf)-R;Va=Bu; z@2?6bXW{Fv#0AB>@Mj;220+hB=2os|h4EW(oUNb&(g<Z}r3I$Aw`qHi3#zy` z3Q)053-XE{dDReKgG=%K(PAf?`W*f zaS@m7*6m~%a9CWG(_b+RC8ed(g##VP&VG9IJ#7M*9FoabT7h3mnSFv zgQXI=o;IH=P>d~9)a5Vf4sV*6qSx|5iELie4|oQxUfl`yyrRjT@C##l<2r-8*_Zz2 z-LCk;b+zyl=Knx)w(tuT+6=pGen#-l|HA2A;%#v?l|NeT!9h^OKM{odOseQ#v2QEj zUkA0?*m7*$g*v`;bEG@9c+7V*_ahVRxzVJ`(RK>sBzR17uFLe3FpE*yFFrhp%I{x45?`q+nb)hfXNOC*SzWmoSHSfbm5n{nA|UvOhrk&OY$U7Zdiayz7AvO9UAz zjeL{*el;PoRvUTK_|7yRO`ljW!X(dV7TXTscX*PAvctzadL<5Ug?=0x%11OOt+R?w zOUBU%sIEX!Jh}6@LS)@mw#nPFA46az0zG6ff98{%Tb9ezkII$a_ z5aNr%BO%KNs~n!4;7L>Jz=Bu)t)@NGrZYaSL7OSI;-oY%|JeaeK1>w z?lM@y>+IK$j?oa-CM}Krd4p$2UR4ZEcp5TJ^?De>Y8+*f+A7_)L*%&htAZC=EdsNa zJ9rJMAWt_~C%JfH+;Ww1j`wv>{OrBqYqOyM=aaJZIyeIK;k9&c3*1xbTxNvL z0ur;wLdmV)0C>XZR%{rz^UuTBG6ir^QI*j%eph@-bf(U2+0{JufI{+1=4Cc!Q8s$k zKR0#h7zNqsO6M*9L0606o*j`m2Kdx zrz`uW|H0Th26+}Vf4*(ow)tz@cK5V7ZQHh|ZQHhO+s3qQckev=U);Md_TGrB%2WBS zqAK#_IZ@wF`SM)O-S~GtWy_wv095VFI(+#qN^cB6A8&mR9Z#Y5xn-i52z~l{SQR8r zcYhHn;#uI+!cRL>R#ukE%c{Yb9Ieku%wv)}ca&@Zi#*CZK4px7}{WrOXur1cd zCE*CgrGE%5H0LGZ$i$^3u&HA&(Zh{?*VoEXZWw=qtJe6gDG8eu-7rixMH$PMm=IH^ zr+7ThE|Co34?isCoz4>N_6maWMJgZ4u&>S}{~UlvP=)!3WNm;Q>;KfnB<=uy60F4* zva@ebM)#hJddE(}r2LX+wTF!QP|@At9*bh1fdzp4cz_6V&$)p7Zh{qVwHHc11Or>C%P7(u?_T?)=+H%60-9W%C1aaop z4r9hT*tr%=Rt#!a#+0|vWf{Cs?w zo?00z%nLvRhAdFTRvL!Dz`>d6;u(O9cr#$IwLu~lt(|teq0ERLvPxV0yZ@0MTE9FypB-24 z`ho#v?rl??2HP#(;)8eWb&_=>2ZWuy@!|9+3?iDlCx#L(++x7nE!qc#63*Wm;rI#< z^00m;h33xRI)R7%7TrrleoY3uE65>auUPjU;nZNe$A&Jd0;}fj{5`7*2c02f(jBG4 zU}+tQ5jFAF)|7!#}-~adK|Clf_MeoDVl)lkY?QJ<0r>_jp8rI67_67u@c2~BkB&aI2O&z zqdo(?q^NXG>vNR*u!scs1saIb@QWQZ!)Iq=F9K2)jy3I$P3<%xVgBD=T}L$U`I)|_ zS%fkVnzH0aORG63bPqIqa(^=?Ug7|%<_dJldFW~wlwPSZTpI;5q@YS+LA>p9P)*tT z^I0bC!@5q+RlE#BOB8h!Ti0qZJk|raMgt`wdw5QEDpzjKU57Kit-JGA;fKb5P7kFs zu?Agd37i?}Tl`!m`PO);`YUD|*So$5qFUgj>)va`)nvn>421&!ZdZ|=wqJm_&e@p$ zK3*&`K2DM&T(nEjbtAtX0FQO&WB|YPon(b>udEEAb({Q+_Ws6>yLXXML$toL^{sdnPaq|X7b4=aI z`pd+h+QxTU$>VHJFJGxJhq;Bs{K2gcpg>%G)*F$*JjHego$QZU-xHY;DPxa#T z3Y-MVnI-H&8pe^|l|HDg_ze<9DC!Y6sI9a!vVTS87eC0OxHG=5ONHp*&M|@LpdsOb z7`8}d#%Z0`l{z>`6>HD==RTFQ3-JgqOhReKsm-7HIZ>0*nz~WXB$O8J2J_rWuxwT+ zpZ`$U2Lbwti*D%zYV!uUWw&s^SJj~RU(aUHYc$}CI^a7R;+ux{z8^e?NEzbGN&YyP zG>2HK$s3z~M`o~rs(>=%ejqgvMVUi3<@xVHQ-N3Nwc+0=+sUcdqviKD>TeVb-aGRB zEXp1--s=cP=o7v>^0Q~aYH#04FV)aP5z?%(Fs}maoes)D`_xMBz)CMom0R>#ZKfwS zc~|}10hcHtY0RFJbXy(X;K z&DJjk3L^HpgQ3v^cU38)vZg?DdsJb_h3{=5hfGPCv{ZoAcqoe zpPzesV_D0da)ClY&x??2w(>3XJq^@E<@B`bB$Qr&-Mkw@mnCB!`&5yCho&AFbsH4$ zr^>6MW^i81ryCMZst6&?VZ(|t7UD$6g8N+H1yU$dC|w(}0hYm9pf+;LfDIW5Mm>B4 z)Ib@y8>eUV^jd^$5+Ji~a>RNhj;Co0vbimUu>&JxnAhTF-EzOwddqabbQ}8$!)d(b6yQMnInO2qI9HIgz#npEKCZ1% z!Yuq27rz=J!+vlx+z8hkNK@FhkimY!#&$tzjACllDYO;erYNitwm=@JdPcTc{IU8G zsQp5pa7ttRQZ*#;KC4AWJ)-@AW0Lbe$|V=yr~ScWV(PhNL@K-w@rzG0?YU;;`ld6R znv4;6VLC=1%_SJ=I)7~pWUA%*t}>pwh!Lp7dI&w7wH)a>duZK?NN&CQVl$6a% zYmV~B#fnaIiF)%-Q#15z2OXBK&r!;aQwmJu|H0ne<1zZ`VR`odiGqKf(U|ZXVSk^| zNXo9KpdZPu-`-&{bz|i*YOKm1H2i5GeE_qv|EJ7-ommt602BRm5N+oqxu$*y&bK!Z zrG^O+Lw@KYC)uGY*r76<@tmSf4jC>8=kdglNWEffRM;SBfSw#8YO?*9Vry4Vr39lt zV)dDt?pl7hY{4=WT5BB+_vx(bG|cU!=%jai_8Gj647BRE{R8SscG<#dE-`Q&Id~0s z(J~ja7EiVnqmPkotE>_4+>RN89^s?>xx>}{EO&=_^2l(+-Ot^f`w|(hw6Ci6YFd4E zef1I7daGK0E72X&ONO@Nm{r+z#G&pvX>(0)&~DDq07XAF+O~51j`i4v)sSe`j%6xs z)ft{GSu<k=Cr{x5ApztR{Czvw34ZWy!NwZ6jTE$&w(icYp&Oj>{P+5;25Np&OkXi3HCViRf=ybW8)|Iza!#UrNUR&Zzjus$lxB zN--o#2xb6)B<9zIQw{C~imrp}387?9%)l!oySR}+F;{f3uHz1bNG?C$%`!zuFx9pC zaR(MhyuXLXB;xI=Tlv_-oI$*>oNlL3%_dlYDMy<*-X-_5U`MP;9TAe1NTROgiea3uQhauC=yVBZy?K6 z9B~%5~EShJDdUU3!nCZ;FmC|fLI<76XOqX`f0a9ugW@WQ{UDSv=x#h>qSQk>Guuayy=yO1FF7e8NQJ-vNyiR~j)e z4s7BjEksOYo;eKE$U&b>iaG(%8$mQ0@=zM+g>FT9>J7l6FffB%W_F;swK-^9WEvCyh`0CDq_d#$R^oQ>%_2oVMa9%IzhXc!iUNBX$ZZXTIm%Q9!OJg+2YlMrKA z#M?o%#HF|1U>$9Wq#~!hP4iDEj)hY1O_`_IQJj30zGb8n6Uj4eiZ%0O>q`Hj*qILM zP}IXD{kwwy-LYO#(mYBLh=7>O6F+9bHo=vk!O`%N)E$NAcBe2Kax_cQ)9N)9i>wMt zHn)KiKvrRZMT$mFb>sb zHQH^%foblI*?$qcboS^Dg7Wl=4)MCmIoaEf_k*$e>gFEp7t8UAD1TG9w2Mc9BtEpS z<)R7Y3_=+(O=Up1u8h!Fsx`F+V1k_+cYS3LA29N|F#tGXe(jIJ2Lu`K_U9`Q^>ze_ z7XFiA zDG~gp5PqMFeAr7g<2Ow91CRN3Lv=5Z_aIvL7f==uAm0q3(m}TCH6)UN}BrXboZQ@QHUL(!3F2&w^$Ek2Rp^L9Hlj ziZzFfNAMKz^@or$ljsl959I$lq0kN+=~uA<0nPgV-w7fABX9m!);#j|@K#xVdvTi4 zrNkZ}Gxi5S^CZZ+4vobSTPqPk8K@7&$zn{4n}P@lAv;t?9w5+=ERX2wK+%vegv;n! z>Xx}!RJXJ=*EBD$(A+#^c^%JWj|UHb@9chzUO>+By=*n|&c0~Qw!7Ug#KsCh0}aDC z^*de0s(g+c=cZlGN?kHu)>3@1Mtnv4h!3Brc*lc5uB9$r(FXZsgV|mj->7(t3=5RK zQljtvy31yMo68qb`M^Z~DLL>8`l5t>ZzMcDmY_i(?{~th8;O9MDOW60ET1czD+eUB zjq9q&I0~^V$RF5VGrQN4jfr!+!`wu(UFU1jEH9K<5z;J_-~O6k9saocmf{UU%*%*< zH=%f-%aLjhP=O{;%}}y|LX(o=oj$I>@^C z8mn;Z(zUY(|9C44%3pk;Nnyw8o(Nov+qJ$&4`IjlDjn3C&YJ|Lj>NQ2wlkxybh1ow zlXro$gyZYVY`u3fceO#*6O)@cG<$e)_Uv6@leYn`VqJ6~Ov6xcU`WG|fAEXOSA5t+ zMaTA@_Ov4+l2+r@9)ah`9cuIvDhzFJ^&dm;I175;Nkegy%(H4*IpbO_3hNhdZi%%Ujr=J`Zo^=LJ6?_v%DE4D+ zqyBS~$B~IDJMcp#jZEoO#)v;7twcp>ikf_71)YR&$BSfzWto+&1+08^)`UO3$(%NO zQZp+Xc;?`kONw>+=E^U8xRAIg$D+pSZtg9AFqW~TS(B=LKeF>~|=tFmi zb=9ldGu9<%tR98Dnu@iCgJHvJtCLv{2T zs6s7G^)MaLpW;uB>brD-go_p~o93 ziU6H9n09R?PJy)*f7xt&Yi-GwtLT6hHcqu#EjBhJ1OQde@`9SW`*DRS-aa1wmF~vI z#+o8Nk&Xovf~$Hp4Pr8Bg3WY*cml>hj7bLQJ`r+rAPiYst(d)tOujO?gL{J_v5dA9 z?u7XW#!{JmlMPIeikY^DlU!X;iX}`_Hn|-$r~#Oxm=`CNvlBlvby73^oFK{bD8Kj= zjrKsmNJIF0XjXREh8DeQQB_a(8y%NPk+Q>pd|2+9a&rMOUIuyx+fc9KQxAD9hZM7NLgFYn|oNEHwNy z{Js=i(q&din{!(au&U))d>t`OW9mY9yoAlJE#7Ye7Y>H73y0NVUSX{{%;Jr&!W}B| z9lqifmmAhO0&}ivTmH#a`?gZhix>bew;!VXteZwER(5X~0;v6W!_Z7G4B_$3xEy+|(R=YfB4l(oVwF#iToYCmdnuk7*e8)sPD_$boRPF(J0|+8wGK zgQ0Q+*3^}yq1amMcnn^e&MpZrRR8(0g_f2+oG5T%5YEm8G{H<7&X#}_+hkX#lLY&P zBmzQ&b9QEeLZR)@(HE=@q{yo{sGc4S9ajllO2%J+>cPm+`MPl;fzGhCjqXN8z0mzF zzef>(EQEt71^+dZhLP_aDl#9Wd;SKSp|k0>0i^)J)ydi-WHmh&iNG%IU z(rI4zbL4(bhoE4m_SCS>4^inp7dbmzwbr{wK%InV1 zj)t8L>3PaU?Tt;UdKcNOEZv@}tYeIQO{=;Fq#eZ|4g)K#al`T{u&hEzGX43SDYIyqHgrLZ zfq)inLt<7mO*fbX?Vk1n^B0d@uso`$lJ&O zEH9M;X*%BObmLgBR1-c+pQ(!;Uk~U?)3%=k5t1T zT3m5yml!NdJcNg!W%_9hBygrW{9*qe^)dQpbe|amwNwP$>Ua)O2wYBsZ*z2FE zXb}PNt<-8uV^OYXMu(pAGxCDBN{N!N#_O=M7Ix-Cx-MHVU#Qjk^C@(I=sXV%u^8@h z(fHA0wSiwLSSeGdi=rCF>#?X#%%63$G9o6*GPE*E1I(lm%mH+AR+jL!XST_dUv6qr zbP@)rR!}{puw1+#`t{D2StI(g?^#_eP^rTnnDqd}M+HYmmTeWP2wlDfksID;vi9jf~6^qt#_w}=fe8)LXG@L zf2mHSv3wuJD=Lh^+(LlB%d3`TBhgVpNrGV_d6JDhKZW5^$dA-unSq2N&58SkEN5se zfv5bdj%#U$;(7cPPeMDnVq@f4u{--!0vkhPE_`iJ3`d~5IC`d&^h;;De_8211STc1 zrn!aaMY^t?;(U#y!W=&hwoyamv7@2THBWW*PrN(2k%w1v_fNmlFnPR7EDx{Ge2f&W zeLPf1)jBtS8ZC44nGL-hQ#-tT=IIvA{8?$s0?wW-l-TU3H57npK@ogofG;bUz8GJH z%|;;<6B9ju^3>x5hiigN!$U&Jd5;Q*^MDFs;mpIinP~=FJYxGG-c*BKY^t9pG8;9T zyJ9(nI}No0_XyZ_!8^&z#oiOt#K?BN(jUojP+(7);}dnq1OQx0-)8}9zX3AZ1WxP) z`CC7i>{tS!=|SYaO;JQ{hS2ENYwJ_bm#{|RWtd#K1pCvM!_WW5xiQ|lEK^{N(2->Z zjiU?Ht{_JY@y8TG_zCM^>z3bpFEn;vj^h*i`yjLzB_g-K)AlthlCkVHA+k37(m~*> zir{Pyv2*|CHX2tiNPTN+^1Wl9qv;k`rAushQw6W+ptb4P>$aw!(BVOM4E7Vj_vTm^ zuGPL1JBs_+2`Nb6+*JA1NObJb)|Gf35P9P;DABYNb_>bz8IAFU>TP&Sx#i91x3KrI zWsT@JF`X-}@ya60^xA0KlS|(D=A==_XB~(89bWhf{N0t=3$)w5{xpV3D>1b`uEHAv z?iX*_xQ@fonWB4g%&24o#xpbRH}1G?jjDZNx=uGb{rkAK?XA+fHjxB~X-v=x5*Po#^l9j9^0qK@`;X{D?5o|@a_>dbYH5{G*jVU}@9fR@-bOydb~8iNT*J+gmC#*G8H3*{w@MSLmRA_MNNf=!lY1 z_0)%Q&h*G)71>flni@>>VUQ@}>S}tMGEeksp^Mk?e!gNjCQxEKfB0SpNzKO z>fhy=x+4r`05ayH{ta|iuub7%vHg_8KPUOVt<@w#HwIqY)*zaPyRT->AHn?sZV!yF zsSy8`qxaa)t&vg+yl4N%zOkAtYdUyH^%8}nGeh^<^d+t;hvLFJsO-R z#qsW)U;8?XbzJ|?)$wlP$19@6(!(V1xpjCfEpX1Y?Y_N9kY0d1ACiS54xAH?Csk;Y+h*bKi1=XCA2BEcRc__@$=5l(# zafbMLl9#9(y2~Qf0BHzD)bu~N#9GWXM;= ze{-sEhwt$E$$aeAaZaY?|hmU;>*# zZ$3=`G)I@m20;?I&kB7{c*?FJ>itXkT~Y6 z+>S5B_e;|~kC)K?-KruwJADRaVvFm8JYP4#Z<24XYuigxZJlqF^P1Z7EY-zZ=?E?f zTA{7A3T1M+Q(vm=t?Y}7igNRBb4O^&cpk(XiUDm~`qb5thRf3!m!m;YWPmyKgw9Qc zcD%n`+1Sv#9H5RQh0ax_EXP2IbX8FtIfQJe2Nyk@%ZwI8ucMGO+VK=DFC`u9Ho zpqTee+`%tuL4Y8^nJpG$UE)0=FKUOA7q5To>?W+X9zErCeT(bu#;@)UbRN9tboC$- z?x_|(06Pq4cbWf4KB}Kti|G7Ny;nB%Vy+4d{vLX&y)AG1mgE1C)e}fvW&HajV(jo*X3>KE?8nSHb8LQbai9S!vfdt++EGicSzN-pPv)};Jt;faZ*EvT^QR#MJ0 z+~;SM9tsPz|W29G&Gt@Sb?1=amkeXXHV=qZ_RJ8&0nc%v*yHB=ye`#97m8M`d*n2&d*#Wx_eWiRMYzMNe@C<2@C*q!?RSbs#)eu!^fgpPyQF%yxH z^v@*E?v5Gl~o7~YBQQe z$&RsPhIUWPc9Nah_uu;yH=E#^N-HIE>aSHl3i|Y*nz%q_%(?otwZnnNv6c`Spd)am z8&UED{7W*FI1u6%k_Bq)c&zLLOsTfB#fKX!I#P6+Gpgb0ASw?6AfScs;xfRKE<`os z7QfPYn23W8ps_=YVr~NB^b+Edf`j2ADUGd#g*_=LjO}@ei#biD5rf^yh|8g&vGEkf zrhGf_ALE0ID9QdahDAjhI1N`r&|`$Ao=A?V6wnlG5I|?Y4$SwB zHN%9v2zH*7{bj(%W*BCmln_?%1LDfvwuT)yP|-J;GAP&rqASDpstJ$Qpan@Q#!f3% zl?z1%S515%KPs)}NlH7e-6yNeBP61LGpbS;RKCNmjBQS^!un@^a^CRktKE1ZR&e6M zJp#ug$$dXX6Dl7%D6?5apk+hI+AnkM+uW59%8*4<4P;CCKuRYS=_SBA4v$yn;QDzR zE`vE>DbJ2q6L;Q5H=LvwEMdJEp<#<%)0SO>(`F>JE+2aA9Jdxhor26NO>PA*LPt87 zt{NF%hu2`0)PRG?Ksz6^b6iLxQtqFv*=N=nV$;HtRpqJ?Ds0#wEWl+pAzyNGc}I%U z4NF8_0fD-Rs2-TLmqI#mQeKf#7H1Ip z5IK(CBT(+~-*H}x;N=SA<%$8{2n6~+pu)5%@Rl=@quKZGgI`8dUb>K7u1cxIYWHEx4;@(016FZZJq;>PjeKi}M!+HJ3 zl(0&w%2!FGi{QXdRT}2Y|6T?nt4#WUeYOd&*p6k(RUY{0dLJ4)U=htD<1j zX=0S+`Qc7*5Tv}p9*;-4(jL~PJl2f2V3C|C4HR2VbBWCqO1LEEP!K$dkdC{6C>e$# z{@^82Y$j3|+1`3((PbwaV4WB)m@H&?_t2A=q6>f(CMoIKcc~IaH@lyY`cI4ohQ)>f zdj}d3=XS@%$`xbHmH=N#V=WyfET$XMkE@N7`^mgN@s{K%!J|p9K#SZ;^>=TmXm8tQ`!#WsV$9Ii^(cVjJghx->+k&QQvPm6ipr8#xL{xsxi3k23q~n zLh_Les-~p&tvm^4NL$0k4!sI-Sac!0!NL-&!cHb|$HwxeDY~-=UvtJ9Fw1M73KrHw zFnXm+8#WUm&jmHRg(=&2%8#E70{jL#xec-B{|%OUKU^2V7@iq)D+5q^xs_*hDA&)B=F9qDdRJadB=_}^8M}nQD4Q=`WPMK*qDGdDL0K( zr5hv{J?(^i8o;F&qFq2Sz|`}oIP%x^pwB*O#`e^CR&e6*N#)>E0+ZR+`!Q)u2O^I16d!SWh%&lo%=}Er3XloYPC5u}ki^ z3j6uu!X5Ash3&!*f9k1peCX5o0m<+47$EzN?Kfg>Qgo&5WWv^9G;(PiGU=$+wI@^} zNeiPA(^SHiB$s_}P0{@+Inz_U3dFu+uw+blB1>pepyS!Vxr9C9)`Wl4TdpLQJ<7(S!IRUqcZ@h=Q*t*3-IT)aGR4fgCxX8Yk>h{?l^WO}XJXS1 z^3j6aJ{~_a9k$tf3p3{>%t!G9L47M#91#dgd^-W8`T>{TGa3;8;G{hG3F7}?%>3Q$ zm;UCf+7}q`9J(@tLG{lLr7IcqPKg%80wA|a|3Sh_Tx${PilR@!J~pw2?qU$^k_D;^ z#{sU4+>msr5Ml#S!|eMNSAjIgU@}S8lv#&aUB6pt6QI?r?jl%;x}~=smr9OSm$fC? z6yh%iJp^P0rT;_OHih9PcN7Diw)2l5Bz0S*VG*=;0_vr zcE+Z8DdeAKBzjk+tV&gYCCy@f>@S4$iSf9?ERwc6?Z%Cy4~IirrR&jPBz$yZLk2k& z8m1ACP`UNW1>{vylaFy^LjT9>87y2c*D=UEyDVirS$XWtL%fHB>ln>)(H;!Jj0U7P zEjZF-a>XjTp!$h3fGQX0G0mhwI*LDc@y34Ig^llpX7bH!H?UEcfGqpN!cDBd-gfL9VKB$IDTCNUBv4 z#v_PZ8jgY#YoV)M7}bes`xHl5)&rl+2GAKLTTIC*(GAFcZwHc^!e>TfAvM}LO{>Dj zlx3-EON!{~4N$8nkiW!J)eewf7MQT_OPu#S^%ssc)b;s!(p)#t&d z3E(z44+7u(E+C#{OoP;WluKp3fRp6aJ(DB#+m3r~Je3{)m*m!c#0jBS6%WWBm7V5o z_CVV|x3t>9zt>4Vr6c1kg@fk^cMRyO(1!)k^o(djq@(;(H8btsRtK3e3W)GY&+BZU zLRo`dFa~IUFyZp)XOM*d9MJFEnM3F1lY7Uc+=6Qjq?$wjCY|z=ka-26-{*-6{NWEI zuWB^VF&k`~33bS}fv$$8%g1-C0wLI$Yyew{O*JpON~x%IuIM;kR&;o9TpV!o$Cc@? zDcSOZ>mW3v4_ovhogq<|{=+&?q7;AenS=(?j%yw{0YM&N8-H^JmI0P9o%5Lar>kitc9U(ri8)gi(sP&5p`iu z4?o*nWod5FN9VnECeYXg!F{OU;;B-QUva#y4WytKTH($nX8dD&L6PygX_+bE1IZbm z#5c?D$*M2{2EK$K`d}^UL~mSnp&#eT5T!U92J$4#Db|f9ugVxye14=@Y#Ye3T&bVz z37=J|2a8#@Iw*DyUnkX#T%%OIiu4e7BBV%~fQ`=gg6(Le0t9Oe;s+B|kNRq5Q&ig= z-=juwq+IQV)0I)3{2G(&wFKLc)mKAtRq<>VPn+VUst_7^hHXJukWOb?u&K;reC#n? z$x*8HtGCg@$Vy~YM5fDe2e!gfps0)|KlUBTn1tGBY1AO$9c)U_j#FkE^3PH!ao%+p z#1ogw!U=Ivk3Yg+v9-J&Yg}Inm5J^%ENJZVMR0aw%r)#oaMuy{fGMnUaX>|Z>6J%W z%gj!uI53|&h$jzB7?2MIAv*hSD(i-!C!q${#5}&i%J}V*(e-Xc?REvee|I+cNk7`g zENzj=I1TG9U%k*_;;N*&Fk7exv%C}!q@LiI)nZZt=j@!|ph1}{X-QcPy*XE-J5ko| zvoS&C9?lMiS)p}Y1vV>r&<%HEmDLt{_5xd+XHvxm#TEB}7B0W!|N25&ekawa@r`PD zC0(k>75wu~-Bg*Izxax$`e~(dWw$5(lv^kFg<-4S8`Qb%*FSjPyKnL2MO>=3g&ZCF zYhTp4ESR{(Qov~P4EqCa|G&5V>&UW*DZQl`495+K!4Nc;HhhSNhaqn_5xVu%FK)+PRF-OU@0#$Dli{J8rw{h~{>N+97bec!LFKxD zgkn&t4%zrgojK^?H-$m*N9H$$e(_HZ`3EyobLr4$V@#bjDG8{RF3bqh;HM96P4SY^ zCnt9~Y9*E%ifcR23xS0yls7-@xlRcG#k(JtyPxIPA90Uf&6-DJXv-C?u6C@Se&m?(RhWjmiOgdu;Zqur)Q5IeDAgh8@e1dMMzaTnAZ$v}B92q}R?U{H2OPlO8*8 z3V3o!#5)0L~{tsz}J!5`_B$N#f`i-4$E$myrlkPzFNPDM;c1T#p|7 zo(&Pr!UCXq0jk{WTsHSUAY4tTV)3;vOAngS1Y9RS8Th9uz`mRvDrX^dKxPBrE`|#X z*?hRys>SYIb<{_xMc`e0G{~Vv{8@(1R1$4CzHvt<#uMMVGAGvyEn+-bb8f|BsVOCs;w!tnZH zvqLHU28iT*ilE;=I(u0*@Ti4qjPA4KCWgdD3+J!6X)$_7dDdUdM~|_o4Y^VvcFB~& ziC$#4$XIjWt4E9LQx&^NFBpPW!UO6g`@~p9A^o+@gH$%?vI}ZF zF@GpF;bdE|)97yh7Ks0fka%WxZ72H#YWbzdQc5}C6FU$Mc8(DrhSaTR!(m-)DvS$F zxvIAW&Y?7;`*(TH33J%TuRu4-TPM_82Y9fll1QQx2d3FdKhhO{YNZCVOSYk`&LiFE zfqC@UB!)hU>weA_>u&=sRaiLkBn1y5Rh&nk7L0-!fzRI?R3`ww91!o=`J6e3eIwk9 z2;wTr%YK$Cruhb6_$VmVY}kB*TYm)9g%s2|>lIU4;P?QLzSE=~F3U)%>EKySNEL*rEL zG2Fm7Nq;iPJ0I*Xj0LLo#ru1)u2^(3z{xkeKRvRE!No7kxCMb2BGcD-*%<=bMxu~OBQbv8r=9U*E=qCrsdorxN)B*i&xQ3_l7|ArF#7rZe zT|6F?Yl(qPV=_8ExCp-Cfvd2Hkau1(AL4`_tk6>#B8A^Dg-<5-3BDPm z7%3ZcN&m6CLRJI1u8o)w#xV`fRdYMDEH*?RgZp*(3BcG)TrG z`+s}4)cghs^~HW%;K(2O9kKKqeDHA^;WBJ<38D3H)}H5EV>8A5vesl(YC`QG*>oJ~ zL?p3c4v=`pX-JaYXEHwmkWaLO(Cr0JaDiKSM>wtBy(SudE8uZ-jw432a6Tm!Hocth zf2yh_E0XRJdRRE;p;$=$6u?X~9?>V!+dh3EMMfk-<{{Sgo4b>qv_joW20NY8CPMm< zzJOpKy8{Q`cMhFZ?f~_C^RbNPY)re5Fh#>2`lyojN_Q>%~rWO?tQ!&8;zfH&dYjdcABjl0D(TrHMbH*PZFQ?zoq zo1f&{&adIMSM<&=8t{Y9{NzXE^b@S~-m72mZAZ1(8>amD(?{|JS+?RAEdJQ1bjPtC z#X*krvtk6sA3urQhif|q@az{P1sBKZ{-NEoGvtuTuoYA;Vo4*`Q?;U-ud}9~pa0|a zbR-Jn(~~z}qi>Tn$kZUn0TH-~1)^s}1;-w`PC3k(E;ond5H%=De_!8^w5g03pQ8nt z%h@%r2&d=Zj`~yIPj8*MH5e6E%`%A!RXYUJu*-s4#WK2buH(p})3Y1S{T4^+ zUJ-xP!kxDQkEtlDP7T)^5T_J;RBO>C@dWaE8Zi4)%TVoT15pR zP{t$ooKo9D!_jlfYsSr2521G|rAgiHs(7(5&KWe!LY zTH}OQGxEt+0>{Lj-1jsBw;tqg#T9CsEDPZi$LF=u=>4-9{+b>0hGx`CyyK*wAE(WX z_hH5X!#nK?)&91}@a*K!#D(Tsw;4k4w@>a8p}rR%G_~=!{xo=L9}e+u5!PGDeD15g zw~O3G#}|PU<`y}>d(;R2jJdd#ZGds%@?Esi-@$LzcNyXZUEXloIM?KlmVH~f?J5k7lB+|=or z#3VZI?#r;%Pxr=u?YzgC*6BAx>J9cZdAVt5eOF)R(zo%$yv6p{v!PZAi8*}nnGs^w zc*Mone}V76qrGGK1p$wo#F=;lzm25Y2i~D4;ruQP@dj;-_RH)2rWAgnuVU>H`TfOb z4fqCC#}eps8Hu(3;{bI%V7yP9$dl*27J9!ArpO-$C9U8_r5fvhFY`xc7CEm=LHMov zGS?SQaR)P?;YT54;S#)K9rrzr0876_C}kb;e%hI{|53Pn9n&=J%b+D4xHJ=#$oyTu zI34<8N~o?M4^BNzWRKg4YReEoger_QX%wF=iDx}%;W|SQ(~Rcvq50oeU+*mU+~iH* z$013)W>is3AnSwss8ZB}nKk0NfKeu$z}eX#!AO*3Ke?yo&B9^0yC{l7{1_`R#KdCW zrgR)q?Q7l@aJ-YUk@td4if{rKcs{MjS_!v2DZ~aVe3J!^xx{mTt1+RupCXUq9JUvG z?;jVb^PR-Zp!X^7Vt>3A#>E(k^fwyzr{D-518_AXqLcJw`;tlRN_V{(&r*G33Ah z^geG8E)Qe2&}rAf6S6QCh30u!2GWAXOymU4Nq5!=k3vKj$YT(aY_q}N$C`jS>tNnS z=m6``aZ^}X7Hxx`c9e=KcFsw-{OS;c=5>UNX;u4(cAOeE9{o-ac3y)T7yqtR2#;F$ zd%cevl1n+D`$E@uw*uK8ouWgrP9pm26We15z%(qLN3IM*$_#FF5FUzeKCYrvmMXNhODZ6q53d{VB+ov05sHJ8B_ zhUr)4m$8COE_u7{<(*YRk*CZ{j1+Sh%_G}&jUQwV<>elvZPWCCp)P30sZ4_=57?;T z=`oe9#w^Pnh~?uegi#G6*eZ$uqpiW5xX&y)zf6mFr{t+LP)peL55@Frx2)&1=PnAG zfl?4kmVS#_f)@3fTWk_>8qr-33={g)H2A6MD7+a{J{Uxpk;d>Fc@3&~Tx22n`WSn{ z0xt*oySUeBBg(&;K&JGRP^w#zH5N%_Ni5Nmc6XRI<-kC$(1XZ>_bu8EJni z&NjRm+H%XZm^QdX z)6qO08!Jplm`;}u*?SRp@hdZm|E{$q>x->G%M7$Y+TrZlb0CYRZxZv7c);s z7g)tBRg_DuAn*MO96P7)lx=lEff7Cv9X{J9vns{bYk)eyTTzc$CVjA4I>ql(&B&f$ ziANS%Hw2QKn8Do!q>r*o^A~wq=U}BGgY{BbVt!A#cm_G!@(QQ^K_7X3=AKKPHyzs; z-klErv_!{La3)pCqPF>8gG=Bcon3JUXO_?$;E(Kgh4}{9!3ORv<@`FV)+Y}u}emM>>y3R1odj^M5d@O-^qMnG9aq zHE0Sc;ucx#L3KfwYW)GFL_ zTY;qCb|zG68xg3sUcKOeymFHE_pbSSBe??Ow#1CQ?KIsY3*~*2_9DoW zB#Ya`&ufNnfY&trp68`o+n0I49xwYCkh<#MW{b=AiK-CxS@Iw=_1Gdv7qM&3yw7<- zO@IcNQ@EB|fy1$qxac3yKk?QynzE3-FCBNtJdf8qy{4E~X1$0oOxGPkHVw9Ep&4s! zL$*6-!foGZ7P&#)Ap^R_49`^qy6a36M7=_Y@mC{)oGuWvW?@%J6%|B#QoouCV5Lok zue5TVhgB%Yn)*7)mpt4ee)B=*sbEU_+K6ua=g_|bOs6fxTCX)6KbE;(cfMRPiqq}2 zv@MV`>uNW~&D9RABT&Q%T>2C)V-B~efK%;Nw>?m`qZ9a&eDjC5fmh16a?avrc`sh= z9))rG1+L1R&ct2m#oB?V7g_08gQFaIJkF7bEFxm0S#ns-Tgvscw<~;z>@%0XhCd88 zBTio%F!f5t59RXnt{9i0qzd+&L!|{hD{8B*LB)}L^P~XcNo~T3183?t{vKqh!))=N zu7kCr^i;-LWqZ=d@^4?QT|GzI(0FC2?A-}`pCcnJTAF$ahgU__MZd_-M*qx&*$?)& zq{5(OB3qfB-Ef9}aNfc~zVe~@YDfhvSLq1)D;x1)wKKe}XFI{nI<`^(>a%kyx;I|^ z;0djJd?${Ld2bvpjm&Hd*nK~X-cxnCl^`WK`^?vH&QrASH8DLuT6;{1RxoQE3F#xv%54csB-mO+~Fqg~SVQ79le1asL={vFpi zkZtaIEp&_Yj^;8xMhF=Zh4fv}XlD>cu4-lkKiC^SknXZvbkE%R6`$07wlSgLGD7CNQ}U&+;T6)w-_P zhyEu#9tV9j!ybEPX9Dk$yS4O!yZQUK^|XTCl`{BIv@&lSSLVO zYrlvKGNP%zB$p7?^R!)R(~S)9rfy4R^N-wNW!?U~&)qMdI{K{@ia8}QV+7h+{45c}B%^ys&_soLN zDXD*1Jv*G@u-Q+S{V_jGw}l4*a8qiGCzpiat8oQb%i5Q#ax*D`5B<7I31)S4I7HaBP}QEIP+6nWZY5jeX$y&VJ3z=2%I%mt0 ze<{27KBW`zA;A!_b!(R`zt|@E2_=RLqNHUu|TlrpHl_80fuQtN6Ql{9e z{KxKKAQpn4C&1rU%faXuAn?4I!kY zba5TlQZ%S6mN~F)`2FlYWzMI{gaWeGzNPd?T$?5%e(f1uILM#}kw)mS7HQ3hL7T_{ z$2#OVhCNM%=>dzd#ZZA#sc~?WKj(GW7Q_}UP)NyWyZ5`7H-BQgZ$>I!di8X;nT;6h z(Cq6)*=mL3+%Q+%%%b~LXMzSVdSePs?7_VI>Qde1mJ12Xq}IjRcvycxopFR^%dq>Op>CjaPt8jk6dDm=^3d@msTstw?X!H+6F;i6qJl zh?2xHL6fRMe=>jeVzPLuR;&N)mcJ(!cCCy8@IlKLA=iz32)A?09?jqO3Ij=T<)pZw zfG)}*Ao0y=OIefJ*LMXAZ53`;sHJ(PJ6Wic79G?-e>)`1OOrYpY?7@3Cd-nNmaya0 z;!>R}t*}oM&ex5tksXMZwY%WLNzARq5sF%D(2MLe$5k5aAZEB;7+sVU3pFx&H9{(M z%d~joty)eDXl=HYsZps;h%UD1NBXcS@Tqs}IaH`oks3weQA(me{L6v9`&4qqWTTHt zBXKkXwDT4@39qi$gZQ5>_$8&?^tfGTM^)a}uv*aIEtQXN2OeNNwzd{} z%WFkTRAvff1iAhMzLqQA{I>vck6i1GIU>lSMqYs zdJMbctVdYNmXdwkxPEc=1=4<4;c8xoI_e{z;ngU`WTV67ve_FfgwteBEF|h*^w@pJ z;0Ep~e3|JVtN9e{hVuNe7TB7P!e?=;>(a4z)Ya8pJq-G+OHN$QURG7*dNug2$K$mM zy!3ei@tTKcy_>xJxC7|r8l&qyNZlDUgki~gYA`@3^Zu5>V^c^gYYVB!9kTD1LZcK+ zRej;GysrK>>gnG^EP*N>pU`&{?JNAt19|<8y+#lAISY+#=jz4nG_Y2O=nIiG$h$UR zFvKSRvI(iL-vw)*%e+k&)k?H&6>W<+!iiwpJW@Y#>ghJeV5EJjUPn-*Kn@jwqIP@JnfO{|KIMM8AumV7JF0OnI^z4DsO8s{;#{=^ zw>>FUp(~JS*PONpH`s{1;SZykpdV;Mwj@v6A}_XNw>^P3JK`_bgtxt!r@f(z2i-P?=7#?Pb)Gt)plptmPtU#&=A)-@i^H!G#)&u|JWoZ{NNvKQOJ7e4+EkLaKu zBtx#yZm9coi5)(|eY(P4@O!?|H`gThH_m`Np)c4q?tg>cK|iFY-T|quZR363Tl{(h zUpj$w0$)6XzP$mz0dC>PJzf#R4@PU;FN1OsJ`|Bo0#&l$AuneK_}6jeLC12XH^Kf@g3)%7R^kzbX4V!P#Gk0Be0kP)0bv4c45V zru%AGmA?a4OdM~tUZ`#uv&H?$c5U5kk4|JIUkPq98Y+QkT>AnPciREEa`ISLosgMK zZ`QCM*k`2qhuv-9TG(cK^eXSGKxXW6fT#I=VP68EE%_jG)InDQTz4KZ`~&{#07h1= zwhjsav>>9iK>ALF5DdNT;w-}lS}_W(p^4R3+d*!CiLSb^^@Hs}u>hzx;L6mf?tkLn z$Tk{%H#i!DErWcgeWO8upznb6E7lROnrzQNwPZdQ_ru+9yJI^=gLekv_CM*pPuE?b zP(N>Nb6i1|joV)vgshbGZ6CTh?#>@lsL7)?rxl>lDzuHo79^LHttGk1%?AaT;J|}s zNN0CzAq`k6+M%xWli{!9sG|KcZx)8KPe9r)V$MR@FVZ0feT!>eHUMRt#NMrP&O+U- zV)=8%x9qWV36+4yGSZD_*ai8W**!vWy7xI?!8~emx2yjM!<9zc51WULzJq0TVcnKq zV#nA4gZ{w0>akL9(w0jTNVdwc_|>}R`0Wn%uSor!o!e9w5CA{|2mpZe-yn4v+aLEs zb6cB#I5R}cOG*y%VPsvt7hA7u>=fjzzl1F%lIwu*lRwJ+ZMIsl-b%0{UW@pmh8Mos zg})IE*HsYC2PdK5xrm!$P4xbD^9G(BQh}qOHjN*WfT$#>Dz48N0TUFkSEWzVH2mtL z39XD@n(I+2WDHTbK{4CYfe)H@AP<(E|17!|dv8tRNR>E)4q15X8uv{SNj1>&0FIEi z5+_+lZl(Ls+;%O{%bCumeKvOcLPCC%0fXtJ*>J4ZE2t7(sSn|rRe`lKG{! znn9pr>r^ku8ehN}F$kd@j+t-I;dOk+JA2OmSqw!k405(i5{i!ZYIc%6vg#?Yvnc}X>8|c53DDUtg z^`|slKcCFE?u|0b%+u2$omX^z0DEMk7| zF!g;VWzcU}(}9R=l+?MMYZ7dJQ_qnKvs$~xUXvVS{L)y(BIe|$L6A+5)(L}L6g6oEy!`Xba&)Ke~3i^Rp~Ygi#%EQp4H4e+*3Ka*GP_a~$P+a2%F!VC|cvWqP(_?j6&!ing`KX0A9m zE(RW_g-)0!Wu_&Lw8eIsZHkwKR+t5pN;@zf6$OQQIb~(Ow~IS4UKS-Knt-sIEF23N z=*T_x-L3-H^D(4kz~GD(A(xL^2P_vEEF5oIQQN>7{2I&73Li~aZhHtiLoT;R1{CVe zW1!OLbuNBOC|w$Mz!lIYk2H?6q0apMJ{m9o-9g2|8r;b+xm|x?!bMc36OaWzB})d( z;iiW#3#cK=6fa@q0@3ig5dyOIZZhIuYw#NjHMB(VZAqoWCF9UZnLDJjx%+k{K(x5KcCYjFR1oWN`!Y~LA#JjW{7)K&D&nVt+j4943fb|GM6sX#BxCceGd2V zG&M(~<^0q|V@x3IS4*YM{1JMIhB(Ml8Mq1#caPh8l<|}{dQ4!x8iS=lV9R@P!BhJX zg;8aLi8d0w7I8a}_;6a@W9n9&3dl~*Fn(Hxgwc%BR0mK1i^ zV&Alg4OY85s`Z@$GVAnalifin3*BWtKi%{^BwaBi6P0SfZW#BjV{pTK>LMQM)~+u5|{gXwZrM43J@MG?={Fg zLn%Hm`yHxXSS_bPW1|U_E#Tu<&*bMEixY~+$HanmI_5dlQ0-tRnmndb5c`k?OPNpM z8MZQfq0vs!o5@mZnNQ=Hrm^k-X~FXzRF~+6zb@cIU6e$$F_P&~lS~twyFHaP|9La1 z-Wd%;mOrb&`ChD{3&k7FN8MbH7>URz;ab!m;RfvHCt)EPb>dKcO=2=u+ONMoX~VzZ z*R738$=l62br4)g8NE zujj*ZmBN693z>%q-Bkp7kom6$%5o`BZOA>~wXpg2xo`9kD6fU@Ru1{$%*Fs=+4Bg% znGXFztmIk)K46a7h!3eEE~vU&Cf*UB0F-zjlHvJ}2+FvkhMs}$Ab#P4Z4x2f!BK5F z3mhY&8&PaucJgfi`KtKCqrq!I*<`5$ev<>?51OGwjOM*ysEFf~kIG+?9!vfDG{XDH z3&CH!3B>Y|8-%xb;RnrazE-}`9l&9In{94-X1^$$8aO%JHh$3prEbG_PY7d$g;uE3 z14Ekv8i%Z!WxDx8U@PL#HZxJd9>f$HcZ@KPBak5|X1|Mg4F$)(@7+%!+Qryb#7{7M z;~Am<(y@m6WRACnKXi)X<$>$v!R_S%T-Sxj`A2Z}Mc>Fr5pT5a7-Jb{FvC#I5ymn` zfBJV7dkFJr-ToNub_E+x%*o4mjQ}myW%i_!%Av|5#C{iO+YS`?4jA|joYXa6kLy6c zE5S-<{|$FSw!ZP=MF&$S?R1S~{ZDc$)HyPg<&5(l^~JDf{(K=uH@ps4h=wOGgD*ga zH$vta(6Kj!yQ90AC(}A!bc<-=rM#K?S~Z$ReDIrbTdN%3n#PGc$9j*@c3fqmX6ww6 zW9+)9AYN|ivinux;)2b6yG3>jiH73&Lpvo=D2Fu zMQn!72isf3HR|(;}v8HD*O0boJO*7_699|8siA)_P@PS9&*M8e!FKC=nnFH13gXE8rFV* zWf!5>hk8L%U2muv@9=B)f{6E2N|!B=GFc$6-${*`BRi}IWw8*HO8<{TsaTNz5Nq)XM} z&Xx*W4jWCA>ube&yw!ToI{1eJozrxPXQ~*VSUq20ozu4QZ?3b~&p&_*;6s$}MG@~t z2ewNU_*W*Z;yd_`)~v!dLXk zm+#4UfAbAJ?i<^4+n4z5Q^h2jr(jN$=`BnIU;fm6vB-jguyTSxl;&>JK=BQw6&Dc)2lg=HWL16b>Drr_kzfeWL)Q`MaXD=_z?zleE!bN_Xwqi|~xwFg!ed(eg zLtCld@We*-0#6v^b-it%{Y;`{%=$NYJvmY5O@d}szJt6Bb3wqF5Q&(wd}CP&OMOa9 z7?yaMe0Q!yWW>K-bEgfqZ%mNYCC@fm8 z=QsTB(za@)9nMxc0G>jwiS()u_lzQL%ijvbDC;iVgIc5X3QYJbogk$@6he&b!qChR zzT2wWi4vN@GwD9b2EAHV03pAMmy%@z$iPftwr?fbU@LCuhtx28fqk3?Vm0sfS-*X<%p_uyuM=O_!Gu)z_C4iV>h_Z#3}5muaPd7j)4 z)c5&;`qcjhVJX|#={q>1$jldiOkf2$!o}P`;A2> zf=sj*;6P$bA=kJ;(y2|vI~n-<_P-;3Oj9cG@ZZ0+)>*HeO}3?Yd3Lq|aSBrcgCD6A zR>$-h18G9K?wD8RRdKH%LnPk)c^x*6EUa9ee=WU45qQ%kFQUV=KJMH(NEMFiX}<|t zs9Q*qaKy7B^yA{UjRalWwT=Q~jylfIBV#fwZp2)#=@(s)%`}U0EhCy`f^`PWin>bwjYbYcRsYDeKJd9yfcKwPor`)qDYHL&uLp-;p6lK zFk3D|Bh3sE$3?nNfNLb_7y1!ZDLCC_`*Z!KFB3~n=O+<>3|xjFfu%%l5UWkASfcya z%48gq$5lW908}6Y0Py~s%II5}+B%p!nOV~b@GA2v=o2zqglF6@)Ls;2=dT1&Uy2}oT zsl5|BG&jde9>(bT3n>pm3gV9!mpn|_TT?9>?J<5v#67Eq&V^N_=NTLu1(A_nX++a3o{cdq1OC{E(Lo ze_=sofQfH3OQ?Ssxj=-&G+F~wTT*;+JB61}KSbgJcoIL#6Es!3W_Al{>F6(yO$B@9 zVbGtJ;+_Z@iBvfHSLR7vt=JT`kw|q9(it5i(5H#xPD~FB4@@~w z1)#uHt9pa|0}Y1IO_mh4zI3s5IU5g+nLg>@Mu*k>E#71%!%`xXKYRif^J9_%l5q9a zbp>8A*=Qy??H`CWLSA^CxVG{+iyZv8tdfH3ErijMwWC5cnRC^K=|U3{Q|zG(;*?$L z!JKUy1()R64vmX#c<&M_x1=tKY7c=9(mQ75qz)cPPH#Sx`eRNvPBZby+tJ9OiUcQYEI#U)oup& z@qW{oxW|bro#p^+Nj`&~0(EQVKZBHIU%}6M{`Cgb5UvDvN)rKo@Ok6&!z!oX!!H5{ zdLVeK6YBiF_92n~{;p$971NM6OrO>^F(Gxb_|tbcUoEMU5~Qnn!EO<*oTN0KUR6BU zI#W}XmM-G#OsyI)sZ64}w46*Bkyf5$zFA^=nSnWhX zROtP(`%8Bnskw!w{Q3N?)=;2T(}sXnw^hqEXzB_qwk-!dW8avtuyl(3bBMZXt!ac+ zx3Nfed-nJ&)z{FM^0g9KFcholt{OylMFO{D>=Y693VAub%R4JMN9J5at6<4Go|SzX ze1tGYR92H|o=4{V*4(zQHsq(phZ3Vugw~2{Qry5DXhjcgKyhGU;TAWzMuKK8=b!TgB^U$T4OWIiaiYy|A@^&!j6py+S{ovgy z)caLBMi9@sMCCosVqL&`b-d6eN=pqh53b8uk*vz5YCXbr!>rRWI8*Q7aUat`noIf$ zYX)dsHvVoCHhA7i|~a%hiZ4{3Az?V%_Z}t4j~xwrJTC=G~g;%O%l7 z?#B8nm-}ripTF?2MP2wT9f}74q#FV_w-J6f?RACQgGkVlsjf8@epJ7DyH^8JXbIOilOZp z`9aVlENm{&Ko~(em(ioOJO<1suD;K^DA9w@dw3Ez|1q4V6IQSr3L-P*$1#>;%gDIjW8EhpSkxNHs?w!o2+m387a&7)FiII~1ml6@;jMS>hGf zEe@=EMO-1_2$E<2z#Xx^b70+zJa5du7k1EfIdd&C%(UES)I=}ysE<0gj^>FSrqg@C z4SLmH?J*7AiFcK!J_<3QV9iT<9ux$n?L*(!D{vZ`Q^c@T^EIx-@8r+kp_4aNpR>i> z3IHfVI+7IIK_p8`?*23bwH39tU1AcbI5?mkB6V!FPct(qwu9Cr9-HMjEV(mf-T|KRBWsS#)T^Q3MN{>F~Wyyp6iD$Oy-7YK>dX)D;pWHeo z{(MN1a0^4lFPskRdH=($bGGwr9sDga2EUF|#sgfEBOl^PV`;LtEjnCiwE(%3b&E0- z4oDn22a>6}%Pbst#hc~M*LpxJIQOQERLCn^hsHXBODcoBvfCvtcui%k`%41u3a1wI zGvyo7HIAZOiC}bRIse8)c0;2$ndE$2ASvs9d;BH~`6PIUbo->h_`pQDaXdZ$Nwd|> z|Ng?-Dcva`))gW9#8rCnJiI_9KT<~N!_S-LO%V1KaQ$NJ7}Cvu>79#wfOqpq_7VRs zSUF`DFIg$(cxzqcvlYwyo00t-IkqV7!HL_-Y&(Y%y_Vq%0Lo)y`Gw$JQ1-A~Ft2$z zlWG(z!zN+tob;zKuG*=#X#_1Q)WYsAuKGb*A-&oi6mPrk-S20$CedbeEc8dxn1sh) zgxoUU?IgN4cqOr_ELu~z-={niBncDqBY>S<4H6X^AvLmJSPdeCi;;F4&aa0gh#ce- z-h_FGAfF|R0r=cU(`&~70~?ap3&sFcfkIUyi2)35Lsg@(0bUN1*Q;iOt3o#H%fkR) zjzsPQv*)anmjcKf!tGNQ0Ioq(>@z_GZV6+vi=OrW$z!+6P6Mn#Z|s951l%N-0b~td z=$j^lv_hrWMbih^2!gaiH`fbogI=Xz=&L4#-Xx{ob%_TK8N#WP+=RVAyYIuZ2V153 z1N1J0ZWnqA79tF9S9%J1h2-70WdL5M8{`jcKxP-a3c5+<0{k2W&K zVanw4pYco6l!{vg3`>?uB_7oiO0|mVXOEPM-TcNCtU&N#(tZ5(m~6xv{)qLUZi!~V zcqo^Bf(5{CYED45Xqx`=^{{S2R^Z!&0)6^(pj?z4{zL`fWf3}$P~npW*0Kw7C_Wv@ zOVLnu{g!K7xiHd5FaC?c#gPf7dNkZYUVeSz_wTK0k4WExr~*~A}JTD^v5Wu& zXx+ZnEuL~kwAGyn)RJuRR%d33Zy||F-!wvLVQ%dgAh%xe_*(;4bQH6>$Ash0B4+k& zwc*E~cGga4Vwutj!|V2woO|A$@AqEE>(=kjeN2GVgL5Aty>jw5dCf!9AHfVel=;v}XMf+BK{DDwrn8oJ zWgLZF%V_7V`R1PHLT&z~m^7g43?&xhYUN!h(GJwM4F_?>{-_wG3j1rRj%t4;{{D;@A=(86auZD#(|H0R}9E#L@FMj9@S7>pp#>oLccH5<6(Hn;Y z(ygS`LF=iEx00xeKs=yIR5zPV6N@4?8^<@L1MpSoH&BWhI~{Hdl;Z^qU-tDRWt>dUE8kU%To<^RSTfIvChRj+t>*ABAXtKy1`8j;@KCOMNP>?xfN$u60tQYwGw?G!fZ3Feg*qKqp*r$$iNJO_S@ z+xY5I>ejth{&E7u?R1a>*w!E6vK-M_X6&5nWSomVYhgxh{=`v>(N(os<2 zRLqRhS&g&`WH!hIG&NapCxHe99Nf`;QfdS|*tdTTk^n-F1PL(h)DUx0ehfmGoRSB- z4Gn9~) zT@0h*hbiQD2}$6johr$cm}D!*L9MEkG05Z_UT?3}ec2)k4}XZKG4vCeq?1K8X%okd zIi~|IvX%{4C_G9tLUpJoduB-8TDfr2@91-^cn9z2{Ai@0QbOnyD(_{8OwR&#$ zn-*V7gHBxbt=3Q6oXZHnu0_y3jjSErP zhpIu!T)EL0u5^J?<{sVS@a+GRcKF8ejBeD8su4<>*_p1-TzUQQMYUcBd~|4zTxoY+ zhv2#@bmph=cK!q`%aM26dgP2v@tQic$xDp44vCve#+D${h$b*a5$TJ+HB=&a{q0+X#iS%coZ^25JAXdRs{ z8>N}Q)Yy<3U-QzMW*3fGX3w7*WyWc5Qyuk)*=(W*t~N77GG?=|qglVaNea$dcqwxG ziG-=zUS$Kbwk|uPuaNB@#r$52>u3c#a24LNSVUed&{0)FjV!3BaY)yFKD#nntn_rc zhCpKt&Jk?B!h9m1yyAdZ;)ZHH2LU4cT@9rvI_g_eIq>q*9#V3UrX$ml><yIdNUgRGv&w>~J{p%f2_-T%!$6xMn?2dv%h`RV@5p#^Y!Dt@qW`=fpJlIJ)<7zgULh*x%LQbAh38Lqucy@<8tx zS3?Jzk07c%6#AEqiZuNlxuEAsn;WuztPAH}XyuVy$aQda>L69pMmDWM&amB9Np&?u zv$#mhE>|eQvlznIEe?m3ejQ*N7|B}=L^9CT5ReZtow>#fS$$c`Hld9Lscbz(p{W`( z_EWfm)`1vG2v#{wc5%z_a|aNAT|k=MG9sL-3OZGi7_|H^FZhLHNINWp7qt1Q4QzXI zTP$8xXD0^TY)x8Rx@_&E>wZMnnRfV8$a?_S85uKXz=mlnULn#4E|3zZS43v!%iLA3 zO(p5hhGjb(P`(ROaTwvFp>F6}^dXY14b>u}x^yes$9YS5gIuET}EiJHY z)~^--==_;36}mM=INV17_!0KQr(}+9Z^77iM)W3q+9|e(Yr7o6q zd9sbE664Y&k5rs+qJEy{W%i?sq@u_9jpl|er8g})O}WAo=0&wRHz?%?74X2&c8yt9 zhTsNfwx}9-NRW}bwyX?qmu_LQ-qNcN|7$Scs?!=VifD-D0TUG=7oTJtYy0`Ir1>y5 zbMpPnVK`a!5#}YY6u7m5v!!lh`A1UYdZ*-qGh~wcmGdt|Eec5@;U%(3LHWmep@xJ5 zTejpyZ+KUE^`Cp+>4USw1z~C5KaIw;ErJiom(b1k*#2A9Wo>5_+SgS6o1gM4G3Xr~ z5PuX_$|ka4*JL;_Xn(jmf;1kZ$&ijfzp{i-6j`iD@;^3QVkV?^O*AK3SDPfzY9j56 z0NSKa3aE}G+{~k~nT#9HHHynE8D9}BS%dI^g)3}rOF?N<5xET%3z+Po&WacDHYb== zXV}g%CR>(dP^TEZL=)5jZ8=h0lzX7W&lTf9|? zPIpXmfAEYvebm3E-|T-dWZb;}YpU>6M85XW4|`?)S!$F1e`B%E=2lMP{~H#oYU^P1 zudQ6!(bE#Zzfpo`su#i;RZgLuP6Sv(Y_`nJCHYPZ0nesCZ;a05^ru&^fK4@ zv^2w$US^DTbBTo@>X&;B8lJz18oHAhGSuA3lhOLNe)N*L+Ty-04Had>1r@K4b>L(pLjXUBV(vkyr-EU8nZ-2RBYlSCk44)4E9n_rYgO|G z0RYJRzeLUbPo(Gn@N@l>^e9^^BCDeK(5_tws09hA3g-t~SjMILnN@&P5&IQ^gn{r6 z5l$YHs*|o2ce0B0KFhw0WA?r@uVXe{O8N5fHu>i97WC#lZNl0r3YIQ#aC%<1)19!N zus?5l`n=wc<^o3j!so{(&6thYK=ktGM3f?=$W&rn|4mZ-7sA9&b$Y`%D6qOHF+_1)ChkCKIbrIwdO2O-+{838sY{ zdz!{B1CJIQd@0HTqr~pps3R2vpQZ3i<%#-$zt9^LZ9M3|8?~IcHIpdojh1L5n;0+E zY_?q@5<{U61!UtRt4vjcx+fVoDI(^hPE^on`h~5x& z=d6+~5yyE)3H9&J6YIJp?m%E>LC6TwaNWQ|wb*2xtXOLriM7+F&~|F;ME_cUbe1um!6905~RDaJq# zJvTpvDi2%6tV(mA-IvprSpSn({Vqo(`?~eXGX~aZ^&S6+h=a{i<4Y8cV*UG%#2!g| zls#)jf43?mE5>+prLMpb72Zi}G$STdZRHli602w49@rAb^xU&pUvSjW>Wu!kz!2Um zM~mL?sLyAj{Jt-463m)5o!>3p=LiGhO&k-hJBkeSFyE4yqAPKGn-sFpfhy%k2!p5N zRAi0pqrElr&4=MVzG7XjaVPM%NdcFKf#~P@vkEShvSAR#YD~DB2MDRy9A{ejgKI>( zQXagA$QJKp3mV}i#BCN=7a($2!)|0^P5q~wuNt8vd%%?s^MyNLA@HZy36Nr-{6y(@ z@#`{J(F!wV@VefxPYFR_T6ru2-1IP@t#0?_$wND-mn&-q-#BxeJ+b%-oUre>J*C`2E?iwI^K zkyLcsUpC}L3okI$z|0hC+%8TK(~H|8M9JkQoBfy-CSVDNP7zue0|2Nk*l9m077M4H z7#DDx1$86+9DJ$UX8*vmbLW*U}|pd>QBF(yJ2AS z{9A@a9gSc|Xy=2259TgBoYlv%Skn7n8ZK^CzUQQVQZ%1`+FC{bzn%ml`i4%n4*%@M zC|1@~T#!Tff@_ivm$zsiD~>={;v;Yqv~jS_SKz1Fy`-=f#3q$CSzqMG_kNgD)%9MQ zJMPD1d;|WFkMTrG(`Pa(nHKEXx>%#@^mLhdeLdfR2VlL?8gi#@)d!#gN&r$I6v*kJ z)RPX{r7#D477oj4p#4R(UsTG4P)9&`OpytM7jb%%BnpHVdHR%8QPxr-^ds^HKuVRtP|YMXLoF&+0j+0j+0L^Hk0Tv+d8A65I4-Rg`cgrD`JaY53yM zOzfvR6O=`7uoRQ9KgW-OLc>++m4{17Ba9dyvRa0o6OzIMxKd(mevyk9(V;{1E1S23 zdq`mBo!C60#9AZCdh9rkI$~`R1Xu?mvS5&d82V{u7btOduq&8XENnMOBEQkd-M;5i zei?Gfea5EihubV=`tLvEszSEfW$M@e$tN<~xtVR{jewoD0%`Afw*L}8 z-nlr&cZ>+Hd!n1eYyX()#7~?NCXWhF%nL)M)}cnhBXnOUkRme-+>EK#(GfT4C2S); zACQ-v(zrv@M`I4KOzm&`-?LR8w}|1=c(d|;?|q(zxq>*RkwqEo-K*; z*2&RRCuoe~yOHuH$cYOm^^tOg1*Kxt3HQJ|?+B8^xFI}+GCkDV`VdyJ1DdM?+~r$5 zOs_s*ucDo}n$hWu@ z4w()1M17Vgz`ER$9{_pBHOsipBkfDb}lq@G$a8o0Qlgv=3m_h zA(`Jh>09ZqD);v*t@r>}`mKQQnRsWb4Gs$vG*qqCR+?+}b1wFwbvQ1AKC9u|qTpMq zpDQ3xkdp5j#v4-n4fG6ptBBpTA_ z;jCH=;!SMs4q|38&OB24!e=D;PfC>LIfxY-oWKE%wWGiFNfIcpj_>ueo+SetEp0m%kZQHhO+qP|-ZQHhO z+qP}nzWeL$_ip;@dtZLZOXlAzS(#(5HLFHdjYUC|S};NS#Ztz4w;TNAP_RW`^wV0y zscsZ50?Cg6Jr8ynk=xt`FP5)Y_iI&8SZ?awx@e<{7t`H_Xr+u>JLF@}jA0-glv-ie zuWZeLq)a42ekuRv{(V=&nkkM)R~hQ18D4}A>L_y6J%st2R7%;?2}O2;#3{o<2F+7L zo?iFB{OAq;6`ZDSzqQIYmtx+*HkBOnPPv}iElS%l_e$Q$wjXLm9$(X_b4ZsL1NsT| zf;zfu`VvPMBDyAg*b`p@qbE{~(E87Dv|O2}h|kE}MNT7xG8L zeE$BFQ!>GVHBkbibaQcbIda?TQ2YM6zeo8?R`Hkv68)%qnw!E0TnH&lS5$cmNv!*< z53c~6h3aa)!zR!++3BZXfLeBS$K33tvUW%elawbc09X&{wU$erpGHzwiU&7$1mKZiwMxn@=LthUrAphd1&&;gEtEaIMzIUNd zjs5I$G4;Itf&E+G=-j1k!8Wq5I+USAGm=XJsOSgAQZW6gGS_4Pp_sb*RIfu@Y%WWL zdHS9Kp{K~XQD(qQR&X)kLZzXINl=Cor_858;03KN?OK}#Gdd)}(rU~;X(p)Gyv!Dy ze$V-Wx4@E`^WZZi1IjYk^T~5UZuvsEA#*tgbWUm-byg|VsZUal%P;?fL;?%nC9*V! z!db4GxfN{q!dosviS3v-cn_G_6k?m4APdH{+RT2Z4Zp6Y{t+BqH_;*0*Eto!p!@fe zH4*nrqEQb3P87KgzSe`Mbx(u=b z6+0myH3Z?044%(eX*acc9dWNmztaq5J!izn7l@HKd@^3UZ9jKhKi_#~Uq5?I2Y-9t zBmOmdDF?Y+$<-|eX}2xL*jBmu19R19P1m*VPyR9E&wK$l$(6TSo}<$nfbl*MhT}%N zta)nyb2aD%e)X)I1^a>k^Wn{W7KMdizX&yFgly~`ic!UnV;tEz@9W?u-?c=#a0$w zDP9aO0H-xSiT4QD*IN^Crg&R0fHvJT6~bIKEH9R3hX#aXg&-fWp~^>#g+Y@ZYTh7* zQ10P!ihj5N!u%Z6-`i_-=G;h7MJ&P*)MP!6&u*32Bwn(%LD8E!yVxN8vgd}7Use^C z{0aX76uW!is;pC8%*2F;he~TSB#$L@&y~nD3+pp@2(Fz#tAikF-d~zqp1bE6cB@Ivi`m$e2h8LYR(pB+NuGZn zk{YsDa;-|Tcu}i?rlyt0(pJE5Y$-+ha?boqpRg}v5R?s}J-)QI1s}v1)G{Ry)=v<= zpNxn|Q=4p#-!ilSh|%hacY1QX2G!dPXr!-?p?0M-4PUG5FgEW32!e!d#j46+FM>)C9}~VdU>Z6EE`gDARKNJY%LQ z`OvjNX&Uw##lAU3_XdOYCqfEUJ0^;C0~H*g?x#H#*U(*Y)6@v|vc~kSUDEHaWL+y>QN$nEdB}(cGu;Kl+5_FwZ>`CH= z0_$`>!@Dz~D*47zSy8V^2q*$@?Pq;(8`@NGQ8dyt&?nDBaqmHTu$Ubv6123gmb6h* zv|Z7ua0A!*a7ag*A-iA{5?lFR4eg9Rv)K&2jk^gfRCOZ`f*aQI9V?ox-gfPd;AbSy zok1JBsc=?!ZO@Qs#E+@)?R}WM*OhRpmw|AZTQ#sAH_)#T9nXu;bP4>PLA{7F#Tor^p7q@{8;g-d3xYTkNVM)9a*O6cH20%vOQhQ^Lm2HC=8%lTlB3JEKz4`ih&G_&_kF=m;y!@YA(7 zJEpuxi(6Iv(K@8f6mby-aBh>Xkg63t@-#puS+%!hjrH`%!O`Hm4oYR+l*901RRuTq zLm2|QUUjSsnj@pzMxi5rq2*DF*p@)DqeoIo{1qKcR0Y)8&JsijWh*B1Ot>3P2J1qu zqgtK}^o9%grw0%fl*Pa~jVK2YuK5WIyidFHQcfHbRYQfss=HWx=+;}ieNnSc+@)1O zb=Z@48XLD{Voqq{Fxt|)%#yVScmEL<1CVa`FMB?rBR_nq-1l;cKBJEyQOZGFv8%WV%+&<(kJd2wSSE{d(aHeN7@}kzHdLP|BOu;p~At zgp!{qKaonxZlGi0;At+X}cB^li4aY_JfBQZvhghgW+u2C&TL~SJxBjHK060YM zXeRUz4)1VavHzj@UT$h=Jd#xa^~&5`bPqB{P1Yqq)n3@Mgdr^@c>kQ%1#UKiVt>FExQ20o@+IJ6a$ z@Mj2q13+#Jdb*BtY?eDhh9@yrZR|@h)mZei(aY3R3dagYrhvAlEVAiOQ1l1(#K1VQ zg6ixTth@H%uhb(p2Xjv*GzRI(WIo@*Aqz?X_$#eU*K@5ZhbB|TXE zq7{52o34`;Q)pps>;25V{n#!ZB;j&Nh6Z9Bk!})kZW7_eFmyF{n{{|4yDyliIDF9M zxEX*il_i6y+p+*UDBV^cUbPYWxf1^8f+ySy7;#$<|3ZW*8$SY@b4b?Njw!QYm(7$g z%HuLE-L(#rdjfjKkh2vYMr-m26&!D}V2AwC4X2-GkV;&m^#J|bm zye`PUugC#3=-#^CGT)yXS|__?9=wk5v)55c-CQ#(ouv6WB87%$H3K8#kCz)7k`DN2 zJT0$@{yx{1eIVZ7GEnyXsknW&17e^I2nHJ_2)K~DJGY}h2QwZ}U=2IA1E#ro`pkoi zNC%Zg`3OO!of_6dcKm%Qmj#E<>o<0$~U9e zSDQ!Xcn0enoR%cDUw3G4k$KVnRrRXs`P|8-i6<-}A?zC`=P+8*Wq3e=)*3GIdKKW0 z*jdawTke+QtAlUd!H=mk$dAcK;dM1+@o??r&Mbtv#f#3iG3ew$XQkqS!=Q;vps{fyx71hHgj4lCK|Aas1J4Bi!H|SAURoVoR$V@u5lSA}k_*Bv z8OAOdgdWLiLLE3Cm`-3Jf2HZ^0#TM9k*F4ciT(#rJAgw1w2t9Ab|Gs`BYjdi`aLHnh^zn0SyD;(i> zTSR?O_DxcvM}-3oDtlDU!1XJWfd2^&H~rM?;cchRj0rpx3j z%zuZE0uOl9tv~Rw_Xj@m{v-G(Y-ywC_%53u@d2pt0`j1nqR%tzdUTG3 zyty&(h-85vMQ5tIf#cjI-flCuo}pNa+Al0W{Y7>Lq`7<6L76XETAP+HGf(IhnQC zZv2f(q>B-JrE?bODI7~ek^vWcEFM z#u`2Vq`HXHm~*_|TuaI=iD&{ZDuIa&$l^4{g4_O(ko92mcj5cCV4u|+Md1m2A>6dF zQuA*{g?=H1M%>RK{f8+1h&=lS^;|E%BTch2*a}9k5LL4y*xNZ2LT;hieMVw3^pbu0 zNcV=RUGORatrf6?=vvGHf(p-527QEA0!U1}R-yEl2^G_ATGak6vLjHTKgf$KxR7vq z$!)L0E9OprSn_}1W4JP1*c9wIM*_z1Cg?dfI3o#d=z9yYUHB}SV>To9zM1{Wzp*Od ze=e3Je&D0tkNT1O|HrZTFAto`yT?z2AQwetLs$jixbV=BvnT+d+8qI+ZBK4)Z7qTv z3Gm*K6ej7vJaCE1!s>^7X6RuM55Ik9p$Yaafy~S163q8eI+7WT(fAGc}h<6pQ@KJ}%2HPWXRc7QtlF0f=$42)i z&ca%}@e4vhda;pAH?znGuxYRg256*7rbpCdOks|+8oWq}#aSAr&nU&1AbOmD=E_Dk zFp+O0o(BTr@*mY~Dwkz!e==dv+IR02Pv39#({nma4b|kfk}_@wrf1tcV~KB7T+3Kt zWa;GVEd%RsW6GXVKkXdK(UVq<|MRNpOlpRf#8r@Pnn#tJL#)D9YD>J*&0{91cA6oE zSZ-FLpI(E1Q8XTew!Dy+n!qO+q`K+RLvLD4$G(;>+5mMm`+TN_wwZB)j=pX{NTshd zgy<^lf%F2Nl+`?r2w&Q! z*)IW3%?ubnWNTews^l6Xg0gNOsYtzvJJnW|wjXqMj&|3ArB9g3@Qm&z5wOfsdh8^h z)ogaI;m0gvFE2Y!;%;EAN$dssr*rVuj$qnod?-*DcpeB|!=jo@{ZukJWq03w_|~>+ z&T2RgZyc?!cncE+|755To7_|zH*hxt@v_KMn}@ejNCX649t~e=Xbw4(!c1IuW7bby zbh|%8RqOHLc->r`AB>+1d|HkUsiM?*pwGN8*Vs?}?QimQs%?Uo8B!HIK5^|z@jCHm z8$xu^bZEOdU90hao~W3D^o!BJ_;UYzXd=ajX(?Xa^Q{91>~-@ zXCyf3wU{COP(apdLN=)})Vw_%?Hk)RKF6ur8-lP8QXgs@dQ`A2KsAHc7@-(|)tx)H z&0*J`Igl)@cnW7iSA;exDiGWd23|*KJf7t46>J@?K*}H)lufWLx{2UDG~F~=laFZ+ zlu(VGa(^rA)}RO82l}KOO_~gU%O4-m-RKvDa@SPy z;J-ZkG~iX=9kXOBAFCP&pP!%S)$PjaJ4YH0X7y=>?ktPJjkyE|gyu_1w?>6gCw9&%7zn(kH2cS3xUan)Lw(~?t&AShFNfL`wCZW_`&21K*(i;*6`~o zju3jqD~shJpgp9K+FLZWZ~9vUBE|lq#VnO?>IT$C^Pw>t2Eo_ZJBUY21n-9x6}d->5HVd2jn1pS8c>CQQ`=QHu-1M(!3 zP@SX+bPnkbR~>VMsJq-N3Gc4Bx*3$_XX}juIbV4@JaG4Z|ApuAyX&vT3kI?Zic07t zJHW+n6=n+s8NEX@SLdldjpDNFp62=T$-eGRz)M1aW zC^l)q>hvqMrB#*J^WATZlNDhvu3`PowF)V0jbClmeOYH~3a2tF5c9{8&>v)1H=&KS zOYljVx6dWD#ETdaRPdk6>=ueM( zjn{&84#-9kOJ=Zeu)6ufV;V*osISDw?mnN6_J&lvsZafG#@$ur9AQiBw%EVM zdtf}1F=*vXMIzF4gl|0FyT%{zS=Yz9BnlWG-onjagNEvF0VHUFRZUL@Mc983Vmg;OIN{)(b_P&Z`pPihRo?v9pVg?#LE4B=Je} zB$<`%BdR6V0gE)EJ}Y?UAZ_6=yQkKiLILvqnddeugwzjfomirO#Ws-P0ICaR-GAAD zD2$MgY22Xa3B-Zv`Hf;B1)(-h&mLc~DTNJgINA1VN%*K18JQ*kI_X<<^H)0oH`V;* zv$F*p)gDin6&9S6x>6O`{zvcH&}U-)+Gj9%u&-Ocz^1S3c!NkNpt0Sl)qEPg!CMAA}W}3bI`m}k|!==PyeDeVpm1cH_uWT&sWZFi_q-x28ZM@NC?AzEJ zHBD#ma!%A#wr}1FuPj&(F<4t3vlL?^&lsRxys*=D&Y^2LZ5V~S% zY!h%!UoTg5m>sk#Pi6VGzz3~h&_c?Ql43(gu^DdU6D|8F!j=PU=Q%FkX#N)Lx2|ox zX8P3^w4H>%@Y$dk8XXuK`zFzOEL&~X$mQ*ePa*2-uGOH;0ZjU`8f>77kQrMI$@**> z$m8gFzoP2Ad^I~llsg1dyCo+W5_;tJTo%&Ej z7|Bqj*$>FT@xt3u;sdBEr8qa?scH7X#YeIByOznt1v1aeq4%ZF7WMkzOtFZuB%R`< zl%A~PK7t3EL-xNFxZzGy%*{H>*SG1DBMELph}ED#8Rxl+lKU?W`VUjrgcy7S8J=W| z4k->pmc+A%Lk|I!ZrRaqfm6NXQC2i4%ZQ4m!Lpt!((@t@W~66-wPs1oCXDlr8F3sI znS$%Mpo+Fa7GMHIDj@S zSCQ*of=bLxy!s^OtCPuP=0>`>Hf9;!vIQ%Bz;}f0Lw8)8ll0)TpCLv{vjqKX75{yk z3Cf7TqvRICN_b`)?4a@nS0Q8F-yRb*HNpQ8Y7A+};GN};H^J*Si+O#wcV_H4bAA5} z@D`27xy3pZ@OvMqJZ3VrE8I8&u*mNSI`u^Jhl3r=%t~g4poHRA#x83Ad`A8Xi}P9i zcas{yLd~Wj$gf{^(7%2O{-bNEsFAClp^<@^m7eAQz;OT7>QJ6^L0CrW_BUpnGqsGi zI#~G&rmKG-vx*AYn}842UcvGZldXg$?RdSeKk%fz9gFc_Gs#o!d2pkjr=lxT6D`P4fO?8qzjZ z@?N_8B2%SQyLpRUr(y%v{3iLZ4Mw|r??}2)XM^eCrJorRLS#P>>i`-j4VyDt>oGbl zJE}*DWbtrP^CK3Q_FSbtXM3&HffgwQ2BxPxZt2-s6vS^5dHNrzb6^g5TRB7l<<(JS zn8lj1QjwHz9uR5PJBcR*G|nRM*TZ-CmfpVsa_zjGaFNgYt#tq}4qw z9EWAOS%H?5uTD;N{J!thTL`g@21n4oy?QCt=Injd?m~God!Bopk@e1_ae8_9&s18W zd(td*ncSM9WOLV@UgkeHp&}AX%q&nK#%-RHM%@>&SY2}~VjNC?!m1OgFTfYBLE813 zgV~)7-JshK0W!(Zue63K+mE8IqvEIg($;UNhvp1&1P829vIaYusk#P?Cz7ycYV2j_ z7F`vxlStSF)202(Fw+V+qPjq+&$#J~I(x@v9z92|84tU(9PWnVMyVX1x|xO;+vQII zGZV}th~k@o+Ggy#&6O+?!!BEd@igc#Ge@@!J0-7674dIuax4|g-DgvpELpUw5+dsK zcEiMxS1mj6XIhhH9ZL-nALaYVmQ<_FU<^%Hc7exNs8tAi!Nwm%iGs_>TNUHYL<%7u zR15jg<;{|x6y3AAWzGI-E1ZITO6OpFZ@0jntbH@bRHPEISUI(D8gLB0JVgOLK9vVE zuG3%JGW->1{bapWQK8 zkBAS}fWHVu6h=J=o7`ex4AMN)F#@fGErJo#b%BFz1okMb4BjH$Bo1}s?>b!f(bArP znVc}nR#MEII|6TOr*MN%b$wtLz>f#%1XYD16bB9T+$=jm07yD^)p-vBXss5z zh<_q`K^oo07B!l@=agNxa$hnHE3(_FnOsci)!}ejHyUAmiw(Udd&qd}&aFA-ztt4% z%FK9);(uwDF)z3GY7u;hF?0tp(h;fLdeqD=O*e1D=2J)MoDqf{z_f1mI}r+{Ud9m> z6)4&>w0U70^-a#59wL#3x>i_bvJ>4XzH%cYe+AjnCZ7b!=i>~Yue`eDSOD z;o}m}XMCU}yofKFL@YW^?9UsCfpikuiWKJla6MF0eHrieL5jtQp1B(QA zgv@HRXNgfjx^G0OSnX$sJv&V+crA~#Mok!P8jS5>oAB1*8;?PuI?I5C?NNMft$3@a0~M)QyE7+rl%~XnoP26jrXj01 z`Kk1qPhf6^2SKjVr^%EyG9!fhZ!*cvJ)+we_QFfd+bPURr^(1s^vDOn8_<%=iOggd zYvl1UJ8dZaB)egn;pksVh@06!NmiaJfjD_?gX+C;CU_Zf4Ii$V-#*soziQ3Y1VJL3 zoO)QlX!^2jXS7dqI-{d&nh#dbg^ZiMD57IjVm#Jp7>)!L_xNVXllM|z0ij+?O`e25 z`PV~4-+@jFb(lp4syXo)fkRd>apAE&TIu!zP`1FpaLm>u$WUgCl^yb!+tcD3!pmE8 zn48n$8zstHW1QWXih&y4aw@cb2Q`%U)I1T(&cgSEBmtJGgRc~B0ytZQ_h4I@JxZL- zS9K`b`|>iAgso-}8aedpGLww2YLX@x&9C$_KG9Cb)gS|t5C4J#PRtF@P0tPHGdNj9 z)Xhfz{bWIY)3O8zx4wI8*gwI8sbuphCXQ6NJvNN*|pE)V4}1Lcs2W^7zL;XdR};%t`%Wo^q7d2+n| zDrz`z!sp+lnXwa-qsl)@FV`O)_MeIL#e{@}SeO|9gNpr`SRrd;X8k`Y+5h~VSH?<6 z{D(;2N~FB8OQ({1e?LEJ z%>&}?Q8v6*H#aYL;F_>N{JRvI98KOp*^2jJ>3pXntv0|r(0ry!eS!qDFjBC4%vw+a zkKyC?uJl!Tvk+Nt7;JWw$~9kyvjz04)8#MJ+&j3}Ras(4YYC!BXuR%*4MJ5WFC_RO zuhPE!f^}#QsM#ph)H^5KyrPrQ1RlY0M?=Y*4_=o`R=FoHmbz*o%YwEgJ5x)z&66y~ z%&N=Qs`lD0<>-c;&2$8+L_4LNYSavwWn`B<7it&e!vut^a<~`{I+912WFP_bS zn%8%+_Rxrk;;z6-p@W!DG;&Vh9xLN9-*0pQFU|?gi+#8wd7S9Gu(@EnOx?jLRMZk~ zKWzGO!sTAc3jHvP)6KtT6E~76lbR0yW*gY&7hdf6*}V2268)dCg<}7Q{rZ1$0x}gX zesTg(y{DL!SI8kz$?2~Z+U&?&`2Yp=0MzJr{{X{(>Mv(n5p9}T$`t#I3*OxI;_O7z zcNJss>4uJ`J!o!?&p)$Gd%V3*PwV_bu4M?olPvF*6~GHb3?rM+RjxdePYF&P0zhWs zoV!u&R|qm(x4(Bz)XTFsY@||P%~CU0|1wsscJN8m69i)AzXN`zkj6!$&m56uuPUWP zOh}L-8KI%2RI#i!0?wu7Y1XW_2AYF&qS={i*a$l2s9U8U=eGu1FK5fEwKG>lwTQAk zVDAUX*NMqOq*m5o)fG+XKqs+A61mx|Q9At6C_jrcs@Pji^3Z*aT62j68~pL}yQ_g- zC2LZEvZ^V+Q8IRmdLm?Vb`R0&CXAOA`0}cAXHruz47B1#UtLIK&p}hNM2Lrnv?Q6P zV1f7+Jax`Azc%HcWn4T~x+MxJj_$hucH6RDeK1GQI#nHVz(R{So3RrbrWJOK&=cw} zi(=}Ssf|iT*FIh8DGG{JDHG9;x@zj}QPBfmhLDE}|aVRBo4ZO?d}{WeqkHG#dZrs`Oc4Y1x;|3_oyl@rk+*mb)JxR~{l(H)*%k@$blzLWmtJb~49Mye#MCKW+dfW@mpR&}YdiL5E z*?)?yqcthKHW-;Os}Qr0tH#r1dVniW)jp*Y6lK~KH6h-$&L$YJU&V;;jb0V_4S8M` z^rfEM^d_)fs=B44F3HPI(%}h>G?w|9Ek5L>Hi$_Ut#G-H(2!R>w>#zEI7)C0T0K6`8;C5^4W zPx=u|V5HH51C!CTG(b`DY2Y#um7u|QifvP;vj_a`o!ja(_FYG(TBl<$)*B#?TO)Q+ z8Lh4R)DOZ?=UOy)RUbT0W>lY=`6ZlDESS=%Un&H23E`(lIi0hqNs1bbYH_q`d6pQ5o_?1i%Xz$^T5oJfE9oqLqq7M-gghR$UgKB%qw6bl@uI zWrUSfz_lkiVoMYZHBC5K0_gnC$#(B6Do#$%I6e(D-Y|cVAJu%6ef~6fH0oY zq(+OWkOdFF@k>MCg>+7KFLpstzMOp-ZVz{x~%57H^!V9kmbW@bqOH@!iyY#NWtfwH0 z626nGqXbkq&iMcpo8`>Aoa-$rVgoT72a?q0=suK z1UPV478^LT<{V#c>C~<=PrQgl#(aCiNUkS!a`QDqI6W(fgtK~p2|;y5!DL3g0;U$q zwe}r)rAro&#JY{4LPFIxqnklu|06Ng-10?Xv7FJwfVB<;knlo@sMHc5!OXiG)g_nfG6po_E1h?eWMtkOR zX?IQ?Q52?+*j$>ny#P{C@CaA0({HRZ-O;hR+i-;nW#52B_2WKVvyU43pci>K7=lT! z+8UQt&v8}$NJn?yYjSDt9AcJZ9s+)lkRiuytpQlOyTo5%lhO3s%~p@)EiH0I#YRZi zodvYFTwV0s4>-!N@`bg0!cX|3U-<-m%LCN0Sm<4fHILs12@+-K5@LPo+!O71-qa>U zhd={O$@$*iYMO9ose$%knZK6mp~gplKh!R6LT$KXbx-b{?NHmT@CI=0q$RFBl&dlY z_Y9Z;YA8N31Q7eJnFY8cl~Xj9B0%uMER865xsh8Z-KDubDZ_j*$^;B-WlhnePYJV>a9x_y z&i2YRXmPdvx<+QyrTC^47k_1GBk_8*YB0)Q*bZ86L67NNUxm2apjUSTp;N3h8_Ha{ z*j?FCL%0%4n02-H6K*_oPe#(06G-6cQ+#;@QgF$!R0l(-o-;j}!6b0m}62##{v05XCbA}t=OsGja zj%#30^)Ex)9%$yQ?i_fmi4hEw$v5(64_*pYquhqYzjg?bx|zpL6VgCad1we8Q*LvXldjLu`&WrpK=-=n$7^ve7yp z>u)(S;p&BiiiHFh@^r9gk%6kYQ@TpO_J?V(Pfs&ZZ2b@ZxQ1bJPJ+L95q~j2rkR{p z5kThWQx;FtO=K5O($K=`7^ZX&^mw3w+>pz33?WoYAYT)^u;2xO5Fu1jvcrfuL(87E zs0c^BO<+IHvHPK+<@~;4zo64dSM;>-DE)#{35eL;DViE+HE1E2U1iC68d@kqiUt!H zSET}$YV;SK>^YwVL_^J1`D2h7(bc?yZSd%hp>h}LL$!ss{OlQrfS zr`&^k-&1ueGMkk&+>PK!czyO>%%Cp4`2)Z<8vcs7e;_dT0aslTo$8iNt05h?re=2L zzkxvz=ywMCy?Jd?w3}}8qKM&bjGl5g!Qy!jHT?lwsIF~%2SXYiqSBFaCXt~qpYDf` z#j!oqwk0Te$r0ITRDp3kff4e=TuHWHX1A2QkMgbEXr3s@^pl9}=H@-L!xqfMDl|yc{7xuMZI_Rgt>^9Mj@xOnPJuq zcp1?4x0aD62f6<{PUqr*^Y~UW;R8k32Z9cs4%~*$N7!ZvG*48!m+odnrAKLp?+|Fn z-qMsr>b#^2oWgJRk{63@CC?+yMk$291{FW#BCt6`BcdIFLE2KRA;74hCzXmH1Wr#dyor3` zU+}#n;_aV6snm^*F0SrhtUbzbY!%0~vBSi|B(jFJHmas({nNO?9vbYry22+*e7VTzERPDOc1AyTk>3~`|r;p zADYYBN)Q>0bnUOf9#Yhk<}6I@V8+XmhJhDq^0Ep58Z9od{`=nja{n9hFGX3)4;cPu z`O%U#)+YaBS_#T6MbX4(D&@vr>+(IWCCUVn|@jbsMXjv(9H$=YKO?r%lX0rFXNCw;I>?=73_Q? zF_%F?x%=v40&t}@hk$`>L4#$Njg`1@OT|qVOs=r(b-O_L4K3>ro+OrymE?FVifv|rdGF{C8nUWYbW`+yeDg$JU1S}=GMz^s!Q*7X| z5xKXaPfVRGRo>2rd#XiqXH|PzB1q!yZK;e!P}lGShA%td^v282RcUW9!-4BsEPHy0 z{`8~L(T4r#$$*t_`g+K<&s>dkq0ZUIfVB<$9k0@vAE(hmGuM1;1hCQ}HNHhOqcK@3 zM#6L66@?2caLr0gzo}8)BonXvFGr(p`lYrl%ANO|Nj>2|(_XtI!<44)ap@Qpz}S}Z zA<*dg6xWe(@bRqV$!)$Ma`9!H!Axl%+Q1nOCiH1GgQq>oeSkaj+YF0)Woc=!UoZp) zv+*;wAjYzmOHYR;!zaS7QIpS=DMeiN{)rvB0wR>HX6|grC1#aAz*(6zzE8v zzydQ>L#oY8w*js1C&PqZ7_fOlz7*;sYWo70Pef$}Mhlt`O|*s~5vhBC>Q-(&`qhx? zvuqAq=)3FRbGl|grQCPJ8^CFKfq&=tM(0h1gMI{MG(UbMu7C7J`#+wF|H8tm?=C-j zvacm|GbFX&t5Fe`D+3*VmaEFHY&7WT>3|vRc4;kk{<%g}R+feCEpzNJrhllxWKG8j z0^=Uw&~tX-aD$ZXMi5BJ3VF>uq$Q?LPpdy^&b%4g)w#4ti^Ui@T%3=lI=4HY(^oxj zuA8TRw?O+mF2NAkAfRcHg3ESj$+&NYM0Gw{o z`%Jyxg@q13Fx0kG)VNuOmqfxtOUp z=4>R$WSR)cLX|PuI})U)PmzwSmJph+bv5_2@^)MulsKTy^^N)s)Ofnb7f8_MN=e`d#=x9-=PiQZuaGYEkLrZK?ZV~CTtW4=gloue^lor6l)h0=r}k_G0~tnEZJ$}N06u9;!|Tg$A0TNjy? zb%uD#?Pvg9gTTf30JVrt|G0OD-@bQ8*m3|+^}8K`_1*sY%GI#eOOPK0gavTOX-k%B zI$E|kI@vs(Z)oPWx*{2iGcQt@%nO{5WPb#X&5qQP{BL5mVLzKg6vEr`YK31wU%rU> zbJ;WXY6KLVuZ=j}y%jiWDc+KM>*&(2x5(1rN09l6)0<8L=U5_u$RhbujR|4$>d0p)&k>bPS)R%& z3Cu~Q6{A}2`eCD@SulyVja>fY$hJD=S1EA0Vfva}>SDN9iS?=lN=sqz+UiyvX?{WE z#el7bF2dOf2P&*qw}ADzbq`@IF~&@aYz86dIE2zH)y#Xug=#98Pw4y@ zVZA6R6;mql`!sGU(Su|BY0;lpLW!F07-5rOK$*?UcH+=~cPd;HQ$3LAZ#$E8O z`}Tv*Z}~ZzY3e38aX9YL5nGq60Q!DusHED*k>2!|U4WNLuoi36t zw!nt6=qSXEQUM<8#!FSB_We`HV_A>9iR@l{AI>Rn?6vwX(46&`cC0^5LtdB)ubSxI z7+?LStdW8AtjPzqr(%Fp!8AS7KI!c3?e--U0bO$Lk4izt5Y+w4H9x|!AQnhHzT(2! zT3s@)HC!r9ag8p1D2W#981FXminS0a=asAjkLVe}5EHp>ajwXqOOjgC#PpVIVOtKI z$*XwNiQT#>V;5*CAj-4DD;N6HD}3i|!#zpS@+DPtta5g`fXTTsX%gs6XUvY4xGt;Q zB6datilEa0^s~V-E5I=3xHr(kGL+i|l4KIm?2c^|o(MSSQh5UFSTJeTk$sO?>*;0dMLBRbnyA z^>TuNgK_J3yV))FTMY`xD`x;m!MDaqAWZZwv@kEi7po{{k~T#hi@C^IO$C1PMd(Rs z9ZBBt(V2h5xBXDNw5Cg?qzdr?#!g|bH*n6Od4X9dtb<4Ca#6S)S_JRq8xZu|zmoyF?;lp}g<;k5fU;g`|m z+oR}y+&|Ki)N2)cgKTOzOdIbBSn>Q)%c0SL>1IbIe2O~_7E&578*&>M*5Q;Y?dXd= zVb|3B?_My+wuLcCiK4mirJaK2@`xX7mR!rTWg0ZNCZ*NfcIkbhKW zvAvZDIy}r?5%S5=*T(AWS67b>N2B|%wzA=r&)^DA?TNxR+@dm&C_za|(1GN^YZSq0 zVJ!qdw)&M)Yf-2XBa?dA2;p*OkX#rUj8JqT=yL`Zwa_YW7@^~ za*pqG(d2f-n^?yv;qjjyZlhp*rP}Re+VQjX=V;ta;TrXG?DudO^q(7(7g~Moij-lU zn6PRr$jZEAplj^IXUsog&NE;t64bY_2U`fU+5>h~@p?c@h=}I@l!V&NoxRy&@WL(J zH5yJnkdGh-cW+}t`z;CyT_>m9RSjD0@NMqD7Pr)fx?7+>A`=-8Es3jM)ZHMt>!8NjP){}tOej$a?oVA;(WB<+u4dDkWVnE_v@J0JfC|YNhOv8$odbD99 zczOBPpeMF1DZLtbk>b=*?yLQSEH0P({p05AUr99#esCKK{<%T?;ADsjDT5j6lf^Z^ z7$Suz&04B=eS<_GN23mpF46lH4`oT9Xue zMG*x;Y&;q95EWgSyxBB^?=%f}y?U+o@0lw!yseqKwZdz(Wz$r-|N6b9oJ;5NaG6?O zC0jPZ3cC65F0Gf?r<$E!4xSu>(=@HN9cMRYv&E*5)skktq+*~|+eh+E=~ozC9vZzb zAB_jji$patP$s1XU`o0U{&d(&|8L!gepF9xP8ypmV=_4oWp^DX;!-|e(&#k-U9gW& z{>v^+RR{3OE5W}r?>H+KEqwJf=iY}>vuVP|o*<`C$*tT9j?ibHkM8=zU>C3t(^eb& zrNB^js@zM9cH&&Q3|5;t7kzu@f+3TPs0CpXXDp zxOc&Ou|%LSdE_r0RiFWYmY73M!?Qqo7vuTPkb>8pWiMBF#(-iNev8C`OX5W{=xPZ# zZ#iFdQy6x$4r2LFkVxvkKq5oM{{|9C>&EBTH>#KXf<%^f&tSjuXP~OxH`v|22_d)e zoWg&AM5g=r{{a&1BUJNit(qN5*J}QPM4ESq`U`CaP}l@*5*e?bsHQq}SOb0N$7n); zRONGckpo~It5ZCE$`ux^I9@a%n2q6bkF0f_LTz@N(Y4qAWE}o7v_??Cx1eS5zla^+ z;gE=U|BoC2)}7Vq$6~1V;5tS21;=R7L0^{x&6j0 zsGV?hXyjqJ8zB1NME};=*RbRBJi4j&qVg#C>(l5^^4Ezpg&tXx-O^~vYG|@GZAUM%gl(QNQv%~G zOL!Z>%SE<{q{`p_d(V)1L4(xT1J-c9%OlF)%IM`7qIk=qki_0?B75>NTKf3@`Ph;^ zrM@09V|)M;sWO%JisM0fxVd;rkAXu^#(M08p5QlrH;Z~n5HSlJSi*iO078U61D0@# zY-8NWY)BlUe4V%utW8;n_A6bTHlE%rflL_|r%`IW4Zq!lHtrN_+e8wx%Zz|yj)T5? zMsmGT30-A(gQ1j{VpVvX*!`?NjBJ2;@UYZhRLBsYL#a{Zs?*F6$x#?PO}Vr7b!Ef|>z1{y2J5bgp_HE`~bs2)sVieigGn04!t zd^@f}d84az!andg!KNBw?-4mdirlm!uRl7I@RuRlW)-a#dWj?^WFQr)0|Le3{hKTS z(xkgJQ>d!O^7#vc~$1xeXvOS$@^&kls zyC(P!!+Y31nGO=zp#Rd&b0@i>1!bX`DT!I+S$ycwnd+6@xc`;S8-Do0RUq}&7;WVs znATaJGP1)Cc1(6HL9}EFoS=)0M{Y7zZKJ`jlKcW?u<#h7n*W|=pcOSZx~1P0vm{jp zx$qDJwC|fneY~bk8UQH}QBByG)Cvj0nD6yo8m*__ra!gcOV5zER9r7}xY9LKZ*cr@ zi?e>nK`8ewJGzZ_dfyBCq@Ohgwm&rxc{t>?DmteB6)h)pQ3(`XL zq+dyLiQPj8zowc+TZY#mYr&t$$Y(n>{;9_PoRU>;xIpLASYGAO|D0bW*#wG%jg8rC z?f5h?j?so;L78}BJrQH#NC6nz$5=VEcolCv`7eRG&btqbbFFESSV+*CN)>PVlIDpo zo~37OM?S4Vlh+jp1Xh75t!3BJgJ zzjO6urD)W;{jA10F2KHOdV0JF?~2e}iG8a`$oBvx&99s!GY*+>zN627?_RG!7`;hb z{!3k1|L_c5=8I41$JfTYe4`EC$S><=>v=jitW2;>&^NA{k>1qq3Bcw6u(kRv@UE)) zHhsneU<~yQDCsx&{nO}evRYq!P~`^QxmJ74P<-+-?f6=!{98bDS_03xQ(Uz37^w4? zCkM0aP@>U7l-$e?s7+k(Lb$SEpSxM9+v~F@EF8OHrGaL-!fO36gGqQtn@HyAuxyjy zkZIrevEx|AE`)e_m|fhIbz`<>SY64dGpkFs!o7TWyCxT4;PY~w_-NL8h6x{^+E;=#T-&q5hJL9b< zsG9=;)=u)s!|78XP>1&cD|viWQ@+2br0&x56EN_tg=%?AiQjG2H4Y|nf>J~yzU^=9I6LB~jmzz);7z&Y^&051$~CcjK4OW@&p zp|w(n;MyVd^0-2YBPtnzI;P2-NK>vaU(6hrWG_C^Y~S3lNC^`=EL(}r(kKvVjeG>} zco;8K39TEI4da_P`}kJwgLvv z;F9<7*6l*m9!ndoIh+`6m#Fs(COXMC+Hg9|67V%#+E}YouwEvTdzF)@{Hlb{RuX6~ zUagT{4C|JL0y>v!JabTvBX}axmnY4qD0b-?jO4K{kw7FiL3D1*MW^mrH~g zr>W8eI9i-DV@lz#wz-{-`*+&EvQNqnoN|_t=c1?d-_SLW239A7QVg^nP8md3{6j%-B#K^4DJvk9AU!M${dVF*gkPl;^pIPz6W!*9254RZCP;}Kl%titoS{9PI5 zSbi$gf_GB81=uqKr&zVq2>FV9+@Xl;me=?4KbM}*R9W+ZUa7?$h*W7vj?X)oH^j}_ zCVKEc=S(<=j|jJ9Q`53CMIcMbaXUv?PuI6rZggp+=OwDFTt$qpbj$kKE*)PYmQg`` zSRD%@zI0++4g_B*CI(L=*8oIV7q;thdGeV~1L+1`=eWLtY)n}&u;R?GxqyUFfUyuK zJneTj3}M-KG>Z4srgLiht+^HNnPEp2B5yfV2WH~ApKba&=07{iX!`*zus*=-Vr`Qb zjC&o-dL=RdXskfc97c)&W{Ln-h@!v~ofm?0xT_sz+9*%MaugIWzwlMqrS+9mIPnga1t|QnSQ) zaN@fE&duMRX7{lP+>GHhj4R_JoAztyJOLKSnO3Xf^UiUNRa)40(G03r1E8u3{Ej7r z=R6(cXQzvWF<_@7NN?bLU#Y`h=Sq`ArZ25)XXwjf-IgWyApcQUl^AP}Q_^Mu%XmV? zK725J2f6@4|A72=IgNu%P|5i>@QW6vV|CiI0&g2pK;J%r`)xaPH!9qjB zF`N*iiL^)c0s{wh{~-I3e=)5|#uqVn9O0ZMyy7T>=ks{}!5yzR0TleFq)eoA_8;T> zJ^kzJuAdgqnDf8)Ocf62kwfHAbdoZ(xrn2tLjnIUK4VFvUD`ePzN z*wnN|2?UUck4s;(WIc;F42NIKNk6u{Y@olH#!~*CJHkFR(+-2AlxQG$jdAOk8F+)x zR<%X7jakk`v9eyZi7N8OQTFg;`4yUWRrS>+QnCu=7B!}_)0rZ9Bqdt%o)HmklNALO zL2D>W69ry;%Y-Js&Rp$lu?~&h2{uI<;Tg?3JA+G_LFiW)E&hJOpK+nS`ql)Nv#tC z^vXz;`ci!oNQRXZu0i>c(7+k1^0yd3PR+mf=rl|Q>*QAsTM2i<{p&we$DRX^5X(jd z9*OdDM$$(4_E|gAjo?Yf0xea5*RB=OTBub+jxijIe+JG&IF)K#>0rvGRFQ?SP3Phe z+O>Kbr+D5s=gVvh&fO6CA088-oZOuYb`cQF%at%6mBEsEy~|ljwUrS~^(9x@BnsH2 z2HI!8GmDnT%oYUZP^6Cl=gKsYA=I^gP)k^|dAe+wLlW_nsdakYi}Nq<;%^3px8x~BHV&U?t%<**dew^TYB-a)+R~$2%Ns3!m~%iZ52i_x&fsv*Y3v5 zxkXmvh6dHHBs%4crE7=G@;Qd#kHhbC$}<+u)FI@GvT$bQ!fm2igO1j>3TTE}8`+|Y z^&<^;^&We1<}&f)1|bRmCN-t`57(eNsD?WKPopYdtBQ#BFGq(2_rF!={;!MdziPA# z6)Y3%-x@7hjaZ@Hk2g1w|9Ya{kj2zrj37O>a7$E_3Ouy*s+NONz{I4vq2bquh8fko z-K5_1gkZJgYSzRhl7i(R`B<^T<^4oc$9*$dZ`ogXYzwuQ^>W|A-81oVAM^8h#OyoZ zT7wLF+lZDeX9w5r?}qG#v`>pfSxTxeS1E-|pRC9UDZwWeL`-UhY~?CVR6`LQ?w|RW zCc1oARe27N6=v5BnL-tL;N+mSav!o4VFVIFTX7DQD>`NHr5vrhbYG&C*tMI|SO>n5 zhQd{-PlaeyCWZU~q0m9!Jj`qYe1W-(4t(x#m(gV;%O6kgBhU;pVQIc|PkZr%>bg;e z)om+%SxcevBBQ>=RGAPfW0a#vvdG*-SzOteug0~wYgZA9ra(hzgsE#t{&>D<^NhiH zn=IA&?(qHE00AUC_@&SynbTn{mG&~f#dX<99Q8hX4_Lxn>=?uWp_y$e1HomHfx@le zGA&w)fc+u5%d$0F7guLdD{GPZr6a-Nplx$^FuuFe_ z#JTkp8mxqhJBFAs?K{St6&dSV-d?NQdKjS*t(8ejVJHejs5H|^uOCu^?Ib|WK4lC= z!lE(T$Z*sKR9wvm#7}?b%JV98ajAR=u0sYL`{`8q8Lu>T$A;w z-g+)es6YSwty8Y-a>BR)L7K27(=#BDxITUh&Q%pmu_UuRgJn7$zYiDYh?DSgA+|p^ zxDYKkHaXU5Q{UKZt@zlOg4vEGUb%0D(GzE_Erjdr@w{C6Lbd|MUvE2Y2fA7YuJc@M5evE8>8^Nj%vU0rWS~{l5K-|(@vsB zF*02CH9Z)2*9qEYcLd?tay6xavY=FhWJ|wkkkhPn!c)sd;gC2hQy2XW1cJmnfA6q= zo!u4;YCZLVn_CZPn*(g{0u8|)Ng6qO7bVRsf6J=H4(*{4e)plx<8CDNc5FPY zM6F{t6&i_CE9;pI_NwlubC@Jon--L->$&*rBUBRdR+;&F<~E|LNj|HF(X_vs0r*DT_46l@3L)A? z3&Hsz&o#DY70kyq<*gy{$I58oWN6qfwF0WA6BJIO3hzBz#yQj=q9<(+_BHznJoYF7 zZPgFnGgQ&P&6m}Lx1J@Av?uyoBi6(Qe|a1K2YK9*F|IZ2RS~+%LiXm7cz<~V`pqiT z9?Oqk&4cdz;taxY=_zzA!nL3?mg5- zC!ABn)C8l&B0aLlRnY>*e4i(y4S4)f;6fk2V0 z6l+Fdi_rP5`f3E}`2ZigUC^NTY#l25&>bVknl+8^gmo(v91!z*dY5tf_4i4MQ}XHE z{{=)ONM;9gGKxpwC!>pRD~~}0^>@4}?>WTclq;tjyC-_vNd*^tUYAtVubN}7uKP7( zHS4+~h&%Xv?)e)7WZsJa%VL$wiHdy7^=GHd(NU0aI-7?eKK%<3KWy;)oskMuL}g%F zU&`bx*$F+KH4$NL>B&spY*q~OU$h>FNY=mU1HA8`W?V?hID7!L+zsMBjs3F*TfIF9 zanC$9&woj8KyENh*T$c`qm*r3+_m@}D;T}ibesu+kzW9)XpvxihXtkCWHoe9-v7>P z3*Qj|QxNYko)OUeF8;V6q$G7PU#nk98`A7FdtoGyyJVhKrXnExUK)hkNx0CVA zE=axoB@HrqAiEw5V>M1IxbPyAzmbT%;=o-^ISw?X_aRPHbN^$U?X!%_GZGvA45t?W z@%;to(;K6%{sZ~nPsfvcn$AAIMnSn><>CL`{o2-4Pv6LqhW|hFTI7u!9PP~v9E}Y5 zEdTS3!+&nxMRFUzPC+=XjY6qPIg8Gnrz$1O#pMrRCQ>k=K5^X31!m!nc;a|VAsz`} zU_PGS7zC0gFz(kw?#axw1_lS`lY@sR>|T81`B}PLy;?wwU`MDDI)6EA1B_uNNm@dp z8aL_y`KooOGO9huHUT|m6+PLjUH{hX_}i@m+e!%>u{|A-I0~xktwpz}UT+20`%xYz0`%W3NmLIj;&sE>7Oa{od@Y#t zyaSx@*004Kr8f)j324WDT~S3VKy1;3%b=kmemgfKCo3;+Y9HDvz4>0GVjl)flas`? z&k*BaNzR@7Rv)9R#cC~)Z}FtE-X8taL_e*QJ#DmmkM}CeYV(C)Ms>JeQ!2uAS$|rt zKuc616gOdRwvWHhv-urk#p+{jkFiYMH2(s$@7X7F_O(buXI$^0!$?SDWRVoSgzF_m znH1>UO`&5v(q+ev#byzl$aSHF^xxGPKK^HB#YRxi#9zEWe}+W={9*Win5KTOx@ZJt zqy%jYoUDwj9cA_G9gOV%zrz>@xT~VjywVa)n&G`~AlyH^%)i8VaMo~eU;u;|2!wme z1F@2$ys6*}h%m6dn5caQPRK|?TTB;C`N4cZGP0U-E0{4)&Pz%vS}H4A$Zr+zU2O4^ zwDmlmTQwazPQN4Ti+JYqbC%!_ZDh4=KlkNHFJinN&2x&muOeU(yIeUIiAtONkrmQ_$$R6IIac!@z3RX}^Oa9zNns%BryW^u)-7 zI$3pv_&TtX@dz_{sg!dhl9;Jj<+?`cq-8T{%Dyx)Rq`2nJ}wG$nUS^oYRz(pK4y{O zV|LqY$76}6UT^`sJVewzbTLQ@*?>q@uN8N zG{uPow-=`|TY&1=@r*!jw`GYYdGa1!U?3G*U`*R2N0pLY3{46R?%y`L1O_MKPT7hV zhL&B3EW2;>?YzU(iRbub)Xx0a+W1RFf9vJ^^a{tRX(al0z_z7eIyr%pcaM=a{Z+sw zlg2c)h?bW8_gd(kqa16Ju5YkhvvNDMo$HmVc-$XLGf$aGwtZQM_nrwm#d@u!`?1M* zT_a{4D->JCZf}a-0~~EqlnW%k3=p>W082pueZ z5OClmWyGHn0b$woIJl`MUmXy*2@qk%&Uh&7Z!@8IXqI#e-TVA#*z@2&*zSlt)p&K{ z&Xq{IgF}kkwc2f1Z>I=7C%|9S@n2NbeyrRcq#?Q^ZrExmSXir}#&A{3L!OkMm`z9zrrXxW$FRPqu_a>u)#OxU4iu^U}gm>DL!)u?@XsW`++ zQ&9S2GhZ#K)sEGV$ZuaE!n>ZJ`|fjhuGHzYPY2AY0rpHd!GKO0nUt>Ib4N~$a>&HU}`#LW5jf{C&I>@6az1V_+KL@Wt$(zb>2?2 z36>pyxphha*LLfPWtEhp>#ktL@W7#rqF3{(Ay1TQthT}Bsi@vkEH8JIv{#&KdZ)l) z0gOk-YZbTbmuDQkEOmVG#ek(5ByHgC%5CfXJH1!#IQP_caco#HYzVMlZ<`Bx&*joo zrh`y%atfMBZUKrRYDBNE+Fch%F=DAuOVWs7nJ9QVmA!x%G*`foz?>lsU)rdyes^za zX`j>?q=$D@X;Fp!B{Tr`2(ulg`ex6FF_Kb1@WHF4gM88q)Z{5Qb z)x<%sYuVt=)A*yt3u)cJq$+9LRNF~YtX%FeUe2* zqQej~7Kj^*rzTiJb;s=mjO)@#f>Sc8qI!+*UuL$#<}|~ERSO&>G~aL(1^m5z_y!N% z5b@HsW!6Rqqw2(~a@#ounojvw`)CV4kQyQN7EZbmSLz$Rx#ER@q@gk;^0G_mJOUiu z62k!)uZOVx2JPLPL49g^?YukjN|;d7dKM)Heo2Jw`41%WbK8mHTW4inpV>CK4wC@# zGS$ynP!Go~10v6f-sj(+yfA4Y{5r0G0@e zCZqSY=Hw;GD%}Q~_<;DpsvUOHHA0f2R6}{t1a^9=MR0CLUy`LIL-{rF6|YB4v)(L&EYE>+iOE*jvUzs6s1YK^|Z?53%;wyk0W zhIes{WqE+*^eTK>ER#v8WtL(gLSym{7|x6r`$M?oY8x z1i_>810gWjC31 zmL~s=pu#t&_4H=;V=$-gM@Xhi6u^NrPQ={NMeI)&yb)9JqP%p&-^H#laH)q%7=SaH z<^3rR0jMy532kc~Eo3k}F$p)#4B|;uBs+981GjFQs=TFjQCZ)BoxrC;;iN80p2bQi z2Qp|9P05h|H35~hFBYnEt8<%0&$N%I32fLUB*(1~;@a`1?r?j+AxF3;C?k0I`srON z>BZp8c@npG=5=qMoDeXO{X+sR>nl{^zcg1jm{(`tD0Dd0bcVb83JsWMFvG55F$2u9 znFqd244`H_!*5?LlsJ`7U=F{Bu_|GRNHq@h)~k;wMo~s;=DRn-2jY_(+?gc?)uPUt z%7kciU`uYkC9hUh(LTI)_v$0NUbD8q3+(G5XD~>ZMd?iT^gA8xO0^8%@+Jy76WD+{ zP_|2KDD3U$QCWx1)T~?zYecSDuk+H*Kx@oZHLE~DrpPtJtqfFlvQEh<=znK-nWakK zDyVPI%U&p0^|h$pusIPU!On;-vywKdAI3USWVT2b_df4TOe;_t=Nh=0m%PEjgce>9 z%c^@IQ@nW8;;$8tzRXJMtK~Cj{_giPZzzuOtqPb|GgB|xfY2V|UM*p`T-7u)KIjio zyrn3yeN-_MNn?vx&q8smV;x$S-7%eXRPn%2C3kRG&rvI65s||W12}2S#7?YlF=)1h zAs-X>aL8*LsdbOfe(h}70>B=SHoH}Z^iW6+m;b%F8S2U#$>rMi+~%hz05iz~JTR)g z(|^b7kv3rieFnDJ^2WaW@o!hR2qeN=(YLL0!md;1%$(t{67rg5{xI4;vuC3l8ko#p zWzNvhi|(lSUe@pApLDNU5i5)AQWKryfON3EtrH7nt-Ae|CnqY%(J!HHEEP>8WmnWM zDHmgl2oH~VdK%8vsq3Yykxn15SaVRWN3>mY(Je!XU{nnw`M0J%a!kN)5ulo%uzC2K${_3tScX6j;!Np`BE>!xVine-72UJi-U0G4%M738Caf?rM8WBtIU@rvA za2QS&om7j|-8kCrL$~IcEJ*WoxJ^Bc&Q?{>6xbor8DXJZT|VliFPQAT7cZ;}+_8bV z8`-hx(5#_BvKCC$x&{x9hKb^vj}~A+=T-g9yr&;j)?C8Y*cFG0O;J&h(mvEV;D~J_ z8HEkSD6{aW#K3_f1zNGHeg&YR^^G)wJ}*IB*SMO(ewK9CNQd>awpDla3?Jk-f6QV& z;61dc_Ka=z{Fz2nbd*#S#88qnLr$5l%x3Z2csBGv5n+rpO>L6Z5M7sM06U=u)6kTK z!`#-5Cu@OO8i%**8&>M)jx4)Va4#Y_Lln z@{&+eR3@pZxq=MtmdDZBZerpKRvORPoSP94XB+RH@>u&nYXP#Z%h-zFB7@n^BKF6P zjJjr2NY;V^nrlt#2~c>fQ9QaXMb9<;d~Yr0?~3`qn7AoM4xBDwX)eDHE~P^Rp0PW< zTxjM#XwaoF6IVpbA8QXZ$b)6iAiwxV-pgn4wc~HtyF(e8N>h<<=;8BPwe&YL$6HH> zMXo=t&a`R4OXM&afh08!7M9 z1~pYB*_ZP^>D8$u=<4DG*Axcn2P2a-a9f74f5_uvo!WO=^vBh|lBztW^T~#$^g~BY zVjMpj#2;u#0}fornz@ZbFIghq`gZ^qHml4o)XrRJj(oSSQbyZ`E_^*3V?dr6w4UzI z%GP)zR0oNvuBWBHbC7V~`?Xg=|G>~5Qb4vqz0Kz5{BE1?ZMZO}C%=ajZ=ArAr-zyL z92im^+g9&n4+h^>;8`Xc7F})g^8wxtUOR&v2UN6|J52wR)@!ivi?YZg#?wDWx12AM z7Q~;x+PftE5w{2ekjvu1h_8{IoqUikeErm-lL{TZaVfa|g{1S-P$0I%tb3HFKoNP6 zt&IEJ%Z8YBjoQam`PN;3Ywj;sTC+xHs%NuIy1+uNf=V6|Ue6{mk^B!k;aD}S^Dq#4 zp~qwkRL;%$M3n8#KUbl8@NiQtou}&7mIRs;;#Yu<`Lrv**#mP4c-VvfF}3TeXhZZ4 zJlP*BVLNO?s_jPXX~BBvt@Y!1K*rFe@hfsG!u^|Q%o9(?}rhOzA4O-$fp_*aEbnj!Eg`GZ9 zJL&tQ3ffkS1Jd`FzRj7PHcs*b(m9s+qJP{8U}IMpg_27%C^v>K@6Oce($xIMX#o0T$c*1o zhl||}+h)WRh=8+ERkS+qr#^c#ny>ZS_B!$9#z8yE2;#sVB#nck%p|?Yjdh!(;6ojQhIrfz zVQXsBCBpLOPVL$HV1?#1Msr$|8RVre#U6Jn1deY79?(jyRCjXIp-ZK}%D_l1GIx;G zE!$=&(8io^#wtQ3 znEsx#Kb|t6dp(Y5(WVsi@Ca_OUVGTCs7MO0^qrtL4iRU8u&qX+PPJ8{AXg!ufm@Vq*UoiyC45Pdyawq-Aw~Y;jnCz4V5tm-5 zCO?2Ro9*3r9}pY$>(WNHHHGcfrj0;TQqrE-G?^XVqVH-86bf1?kLC1t`%{V)ZPeT15S|3-5h&0%4uVG; zHh>I^oYhhN8QgxBseRl>;&F|WkCn{N_viXE*wBN0i2_e>ZwayV`XP!(&O-5Y)a&%*5{t3GLG~Oj_&PwQu3aa(r0B{bpuw~Dj zn6?GXhRCP|svb_Og_fX0Hqq1J#Qrc~iynf&igB=Go*rOp{c~Z9_kJtc`3LoY*l`a= z)4wGT6SEHFMi4gGmW{h#HpYMpr$6bH{{4ie?(>1fxtpg@mw!$9z-#b3#7}wmKnrxQ zOO&AJjOcJoX(UnU80`#>#+3FwGS~8GT2>=eQ;yeON`0{VHjczE*=ZDI zm#G(n-o*yqFdQs2eB6unDqf4mEgiYNV31OWn+!)J$7#;0bGW=B$#uTW;}jZipb5Bh zN=Us-lkk~4IgK}S;vycBeChb&3#n)PeNbyiQFzP)A^~#cNA53tN^H|cc+1P=cf_r6 zn4Ab99lbMO%J7&^O`F+1R5(L`FLnj?Dh&!NJ$?E;RR|wKx-;N&xq228DW+fY2H(Nb z*DP5Q(n~c(T$&bZ!j$|BX6LWlWn6Jqm+@(gt`VJONt%2U)NaaNi>Z7WIlCEipf}c> zxfoE;VRZ89VnsZ$7pyMrC$E{t?MEiYW^JEB|E{nw|2}(|b9d-imAgIJ zkv&ezmRr_W7GM@29#}HW^=2)oGW;R<1GF708RU>n$!tFT_UySNmcC}f<16GXSFtYHULDG9rRjCYB3VR&nLb@yQ{K&s5p01C&uUjMB$ebE$5Xu4B zVZTr#&`dr?WpNQ&;ZbY0a_xuOm^HC4Y%S)xNX6Zssy>xdOV5PqA=pz+@uH{26lPhU zc3+T%AjU-M;)GL#blwy>bS>!zGX|x36m@=;xSZ-e^p$yHZ*8HKyPqocgbO@ia<+#r zc$nH_>%C=}TgDS#x81$STd#lQ2b-!`z5&X0cqk>ia8k`o+)2#l4dIhT?62t2_1#b> zUcP9S$E*6%P}%-Ko(T`?`^x$bn0P%S&6YsKwLx%N9V|cp3NM2oQ7(faO`d1<2j5&2 zQ9U-?emtq0-a?(B9NxWh5D5I*FAIPbZ!RyEB*ncwmWF^j^p5SJr3 zDdMqEI3DOdj0GLt&4w*O6ReMytb@!l9XrT?pc_H0i%ImMe!AcXd}wSo=<{CeQQoa5 zfYR3vYO{J&Y&850h0c=f++Jj@FXN5UNF@;7tm8(MzW{W{&1ZkCd}p)2!s4Z{vkmGpE>$343!a zg?8?f7tFk`rj9dnjdHV>OOQ7oJ1wp1m^Dx;3}fL~XrS?cGz?P-ZUCZYNr;b?aYLw9 zk(+@NH2g9eFU&8ZcgIh$`AEE-kW(rIZZ}X|fcxx%rxGmsIpwr7NXT@xO2veK2q_N! zP-kWl1jHpsK&O0Za__OJX&xJoxZcfyyRDT)i}t%)nF;qR)25~FK*RJoJ>76LV zo2k0MM>#eEgG`Mb>ICWQKq8HZnym2{5f<;&4EPMwF{{l{L#d6d8+ORu25Z?GG;Fe`EBioM zw7pRkF1W-B@$lNb!;7DSO%~{vevbgdY^-q-l^55=#@JpB+rQWGk?+0*9U?R5l?ZF945{t5(^3VeoOSYTE!n;=H zj3g}vwk;SDuw~${jqK<;%7}MPOyE1mgU<#^fjZ@7uL0@7B8qfHr3z#!N%LSz!Uju} z>}pxk3rfIAP)54=2hp_)5=^+Y~?xZD$w#5OJGfWQt~GiWas)! z5?bXbq zi*w_rx7!d?vkC@FF*H)Z`1swWnY2ngu(zE?~ zC4tz?&&>|2T5&cie>e>IQ@J%iHIqe67wGwtJTCDx@+`Dp9hRSg0~W1Y$qIXHgB)%% z2H03n;Piqv;FVa@#$q)1Z7sm8DZ+T_JX}>DUyql?zHDjJe$%6S+>wRLR&@Q@p^VO@ zO66_%qTE51%U<*f-r=kjar>su5l!WDg!a4TXeD>F|5*lFJ4c`+&^RUcj5eUN_@R?P zvBNpEs2~gsf~wQf^%jLsJSR(LuBC^)QKhB!fO^;9Pm;nq*ePmgX08oSPL8(T(%s{a zkIc>biG72no>QQecl+@_(WK^e2ML{fl&bvr`M$$bEAk99f%Im9^m7FRd_apF3b^1w zjljfb_cqOLS<}T>YNy}+b6)(kdZqw)0~GiOF7baO>anC982sVmd&D4=i)dr0PuGPK zDSod(dHU64wH7bVdvuT@?^E2Ys%$+jklArYAhhZ-sL(51aYUAGFSSh%4bNii(H`Uz zY=Sh+IKfJuCyD?1p_1de5~!55d9=-aMZ6 zZWcp)b_y^$XQ*mNXyjhsRdL|N0Wox&(YQL=8G_6e7fETVPw znmh(SL~+{|&7}|(<4R0|&l*0SFoE{+5vVx0ft*0HO^#frj(K(>X0G~afZK9Qj!;f* zQ0PHD_gZ>k%m_;#s9lyVY!I^gcCAJ-&CG%corEsDBme7>;*;JAalpU)kBYh{fVA-YhcM(c>`W%CM+ ztz|8Xjj9c6E31{Q=8opyC_bJC5=8!#bM6^#w{M1>BhM3#6Rs8-nV;jihCe71+kYDm zaB#U5{-9oujZkl14D6iV=;Cp{YT#Z|>>hd(^I(L4TEQS&&4nRvqp?K-nYinyxj%j`qY$kYx>sgW>RyP zEtDjF28?^Ei_DO|mB*VTc}lTlD=g)#AnL4~u_Sip-s>#R@tj|?Jlr8@FQ4(8J!*`9 zS`m#nT_F?wR37Rmo>q+CV$ajvq0W5d~)Kt?DHgcCdK>=`jEW^)ql#5)g*ql(Er3lZ!6zh;CdenaQKU1 z-^t1lE@485toMg)iyGi(M`MXYDmMoraxs;4yH4e0t4{gJl4D2ViWcIZrFT0rDmUPH zkUQkIm9U_kg$*v`IWofQ;E`T}6)lXNes?<(5~a3w5XD`VqpM<6pB1h`hfRaIb*cy- z%srCxX%G2d{dFNo0sh55??!{Wv%lgFmuJ7xRK(R0_GB$RNYR(vjOVhhqvh}CApaU!~D;t!|Z$}S~kmF>E%%cBRUrcNrfW*tef&XhRZeEz*SJ~M0Z zC+aZtNdM(x&geysiP~QBP|qjZ$~q@qH$2eD8P6`#G}qxw_j@P1&xnr$oD(qb>yz~< zB}NH%S!$fayQ3DTl7|@yN<&oBK|Zmx-pB_D1XAWSA)~>$$#ZXWPbg4GvVndo_wZm~ zKYStz3oPM5x?o6ga<-N->?FPNw;O0_L64D)TrEB%mrGQeQdd4y?OqbBq}Y_I?}+1H zz`!w{!;Bd0nBPP@v1O?)+fk<}r7y?5jA2j|4xUnv&bX>OI6)?`vzB}`+=Yeo+`F_4 z9;hWt0~3)ae7Izj>?3tEjFBBdc0GhnpLPkFMxX@Q-+~gb< z@DJZYoeZ1uTD;{=)W)Z%y4S1$JQk2-n8fiY6}_*GdG1>%6nO7u!-*lpG{{pFr)fQR zSqV*5~jhK?CNxg*dudKMHb61K}l90 zt6Xi@&Y~?=7Y{D4KPE`_B$h^$U|6r~?!vyMp`yS*OIvHJd&b}8GnOwDvDoWcK1`xO z2|lVQQ9NcSG5!=dVhOH0=9spZkd{0dzm_~H7cFKVM&$66>_)#6FQJqHLF8cQcO4I8 z6ik$KT2~lOVhd^AWZM#tnN*{WqApJm;aR^LPgK7cKVg_g)btull%hb*T?yu?X{Aw( zqLo(&!=hTxU)^X}q}?T6U2oX5s4@R9D!Fn_E`j#VA2r8=5|ntoAT0ejYMOk2cUj%O zX}ex}h?$~Ixa4A~62auasfx~8X2Nklc5`WzMGJ05Y%ot0mOw~4zS&@C2eFB82(GY^tNiWV> zWFZdcs%+|HB0tl&N)n}`D$Y=b5vP8Ovu}GsjpFi3!imEsKL1*_+*`0@Kk2F&oj_$m zBqMGksaVrAMoFx1>Wr-@kxBT65~pjpAEzywTO#db@b-H63zR^Q8>FTe+nY2E3j5e0S{f!gPx=8(Vv1biD{V>l8x128 zTv&~9X*ET1J_}uh>FKf9t-<6U`qKDyHEn%~S>w@dQynV(76(BmmF>2*LMKCmiN9H7 zM9C_^fvcq;i=ERY?ldyyE!*7QDqZfzZ;xj2kPd>fWK$VNtBdvOkq_V$t=fqv3xp*o zl5bmixeB75pRzcaTuDyF?`sqbgIO$@4LUBC073liO);PXP#A}m<25uLOsV2|XmhOr zRX(S?m&Oct`PsN>L({?O(M*K+hs-gtBmZr|nuM_+?7eH*`n;RpfCoiyg;0Jmh+7p# zmK$qE0EU2yDXlv}`uc(lzr|we<&bN)bd2pig-UZ0k3+wZ}7iY}>r^o^$R^ z-uuUQbCXW3P9>Fe*V9$$Rco#1DN?YJWF0}ijR2uT;CK)-hFy8nP!9^++-wR%Xn#{Z zV$)>*-Fnjs6^E2*Zam?6&viXEp965dum5}sW`5?A;##TeD&MtJ^<-%aVJ?J)wAf^POLEnGvgN0kIRLo&Svscm&LD3x5?2 zep5+`3ilIGHPPso+b5GJTmUyW4OeN zabr=R$=%^wk?QxK=DNqJ0w^%lPhtkDNo_3NU%>2pkv)d%Er<9Hba`jNeYAUy;&5d2QFu zr`epR*}j}JEQgd&x&q?eH-$*2gJzC!9a&JVXr=*hsZUg4tI6U-?vGru98;i%dM#W! zCbL|b#=$J#@E3HwFu&_x<`C(ZFlqE=0=qSp&Z+KK2f;=!hM8v(gIu>R>XX>Px+-Os zkPuuwi8z1RpLs4voC(Q7D!2A}JQ8knDAr&KK>3ef2sx-8LxJ-ydJ&yh3wc1Y9r*j} z)wE4%`@t%Kl}&XHjnquh*#63g`}=C-67KXc3aM30vR_pY)aLP%ZICJ8C#~fLoSu5f zLY|Iyt9?r+SI~VJE3boFx2-exF7E6aI!qQC9ym2Fc+NswJ5Z~b&;@CCd)|Vnzs>h`r@p*hoTXdt%>**q~jlX`9hj}i%x!CGnM>LGb?^iq#cA~Po*8s zeGmTw?P^eeACy0qrTGR|U9aE#hTF7TXn)J7!V4!K1pz++h@T;SN2p>%q!E*%7@oqE z4L{W^C(V|V>bxqjD4f}?Y>d_oqGN1Wqv%cWiPs< zb@r`h;U{K^CacN!>zr22?bhK5CbW*f$}>*CVCkH^A>116*e9xe-bH9XIvh8b3v@ww zKE4fqAvr(_jP&TeLWU4%C`B!78oTkdxP~VgmY^wX5K?Bgr5hnwAbGvx1f6PU5qvsKDrp+JJRPV` zBbZl_`<^#+YLrN2E>}8JmK)7jEY}+Sbs$(_ZoIo-qOF-=5h0(Y4m(nlSaWve{zR(g zm*%JI6!JEOd<Z7V5_U<%ISSr&l z*}~Ig%Qw_4{#14OL1L;=qs%~4W*C~xz$#OAY!i4blRPGOG&CE7ZJFI!ix*i{p0GCV z|6Fyhu)RjGgZ56a{%j~{MC%Ro*0W%Ol&!fl^%nR;NjA;0I9POR<%EMFutx0cE3ohW zP}|W7&@W_=GL?)<=tgOa^)+GY~IBA zKU~*lv%;U4X4@AT)2!^wW(ymSBvWS2;~{-v259f*ljR(+&QlCD6;Eoa-fX4Pd}{WL zXJEF0amr1a*|sGk4Z>B*DyQiRS=D$Ii*(g%Zeed01wC-@7f(ylKpYlD0)esaf2905 zmON$uv09JTw=?e;9`goHKNk*RWw%K?GO}zkhqUgOg7FWg3rp2Eo*~)PERPPf3h|>- z%b2NWj$3@Q{*hcRl&uv9R1X59x3f9Hv5$M%9QlOXjM%LWIi8#Dbu~ELl^|*4|8K3QAF&J$6{D#iM8@!Rl z{WUv-7wi*idbt(QM8#Bf4mCu( zZg#d=GP5w$SGT{u1WL-z-nZV*y3f>?mf(24HF~8W6DcZPkPu1GehE_!@Vm<+?FB3# zhZCpAlWfk;SQ3lH%;!!nbzstsh|-fKUagLmusUI308&nkx-xb=X#M5^)iID4`d2#e z5?aS!l87iMqFj*bhOf8w*QYiwoTx#t$q_ z##8bR}nUI;{M{DZ`v-X6;l^Q#0kL?gMLRx zxcH6hIteP|Y8UFid=5NNE+JZ=Nw|SGNi$)6FGMMq4F~=Q{dXLV^WLehp3-k#+lkf2 zvp_Oq3Z95wcT>ypgMPB5!^9s=Uu%lAm4Nmxcgw?+oGeQ;t`)h=9G0Hq($+2`A5%Ha zpNz=IkesB-r1?lwu9Z}^^t7b|*($pH9F}H<>w!qJB|JfmLpG37H8nZ1|?JVvk@>XpAMmlmZFxgxx&?vbAp)&*!_wuy)jE;THXJ->oWG$wyTkxjxwOy_F zXEb%EujV}Ft6ToeQj~R$SBkHk<};JlQPicQ|7Jd`T!Ddhsp?Kulzpe0E6ZT|>m`36YdmA3sBM#P6=R})-4oEEl{rAyNfWa%q15?Bga zJGzX7!%svx$x45V%6<5^I84;K7`b$DSF93VMa_4FkwsFqq^_i>aSp1F{WglBrlzDn z`K_eIHS^b*mm*zFw%nC;`YtI7d8FhqRUR}ZEBR~j(SMJCURn5lofJ|N_jqi;@uT6@s~tQVDaz^U$z`q4S&T5FaY*yP$8 zL++Gmf#!U5q9MWQKNc?&%5k8c776-D^@p0~ySi9MM`4^ni|3bE%6ddAQ;FS7T;vQx z=*JnS^6(IAuk{9|K-{aspN(=w>D-2Pon{o`b*t;$JkaTID66H6la#t+TJLa8j8Kx=!0+9v=1u_P0+G5dC zIGW`x5cCC2COpfkt#yhOXuHJ!-c(z7xE+0?Za;X<$L`ICI-b@tof?c?wQIZxyX_AP z!>nO200OoyyuA9`x6mBB>6yAy5^@2uima+DQ=u4&oke+C(mFN&JQs;0S1QPK6m9!G zmpVq5ppC2o%d>jzu=y}jw6zrI5!26aw+}mX6zvW@554k^< zA-xfEvj`}nMpzZboC)w24Z7=@OX(gc^C47D@g*+zp~R*ph%BA(ODw`g^px+dxpQQ# zmo>jhxc4}@1VvxFSm%l^Tz!4y`sca5YPNFi54GH(Sl{!Fe!)bsx-VZ(kz=61-T(Cu z>L~@~!dpA_?j zNd{GyRa&yCh-2isWV0#*a(Wd;G;~WvxzpRilFX2+l|1Xd4Mp(Lj8nuxMTDr*(V`2f zyPPU_Sy{)1c|?E1M);7kKTq1bB*n8K^Ru6Pw`fx|s*ImFYiEpw8`j?o=E5~o(Wc1= zvvj0sdXg;NuqpWOB;D4z+zW2bHCLC$^8=G~hNQ(A;$k;Pa5_|VuFpSK?o2v#QRZk) zdH0DrsAYLkMr@^AXyi@URAJ&xcM*nnIt#_VtQ3h#m!m7Z3^4IcIICHk76u3EZ74;( zTdVe^zM2mllQYp@?9EMuy|EV~Zd=@j66>)`l#4@l_~BXqxSpyS+~lX&R_q8y*Z<`f zYJ_91G{_gKRA&?5lr-rgrqk9-toDwslUyjd{jTP#oOwLUn6!9*KDo}&=pE|ezjEV? zY?)`6*I{B@*N`w`8O)ZtXj2&5`r^hyhLHRix=}#>$}BL&4NC*9*^{1&DqwNWg@VqY zA*3{_r6h+?N8aeWfkVy{yCEO6N4_vB(FNURddB z%#V}{YHD}kN7a_(B*6<@rpX~Skvs2@Cwi28$BDyFziV3DHG1QXyd?s??O`fF1;G^& zto&|l=_^T`FL|I6=|i44i2SNUEFsA?Xq-cYwr5-}SjjQNHO-B&MBG9!_({5vzo-No zpLDZSyftr^24;8NGrhN69NFU2>xq3Luu%%zSG2pi&BL3DyMw$rdF)g2sH8*qRE z95qhrIBgDY@Ev&Z@{`eP;?|lTXwBYuLD>_okcV+dy*z5jb+F4Ez&Y8P4%Q(1sbJfY zV9X|4BLLzY14hSOqW~%gZ+U?0@m#dy4b6iq#N!RTvCU8beZ!v(u!E~%@$NA`Li`MG zAb{s5U^KxS**SSkcUUJiC0qK+m9{Nz<9yA651?;;^{BCYHGOcDdXz>p-5tL1j=4p# zi(t(0_Y(=wyXVkD{JdiG$p+{(yuvwsrvoT3`y_4fCSIu=@c+EuyvJWl!7S|K9JAb< zBjOrgAK4l{OT4ubV;kXS`38>`pZO@w;*91mo6Y=Yp(!|GTS{jUDV)io7&2R2?Kl!! zUhO!FnkWGEycr8ec5`-Sr)DW*c(W%he|&T2>LLC7mEjfs{FU()|GdYwdlnPGT+%yo zH=VRgdZvG}xW+J%t+>Yg{IR%uWW(C&i(NWVuGn@Twl#5tC*cX*@;^9XUkk4D6knRz zaag`*{$r5f5?m(=Lr8q0f_SQk*zd z1EL?i*KYKnwk5b3kag*iKe6UL6HlBHPpTySLwD6lyRuyLNZ-8vPbZG4WVYn?Or}jb zv3+7s@@_7&U$~1N_M6>2LQ^Ym+DU%$Oll1QSuTyXfEc)aGI&D&zha^`sX;Mt0!>&3 zES<@)c-UIg;ISPocI5G&#)J-M&BTEYr!g%y?LW3=%wka5c5G*YZ9Ta^)p~4#?Lgf2 zAlVVD%n=Mr2Oy5X-0l=h{GUe8#NiNo*aX(hjuA^F6GwVP@<=?%kxjzAMb?59tLqxa zczkD`eI&V`r&~#EBz9_35*(w6D0(eJ1Ux@HmS-$umi~TxCwI$oMCXdk_}3uJn8p}A z%(%wT2Jz`#M9z=|*&Qa9%&G$v)})3B7M23zGbok<%QGw1Ec5eE<_pU+FP3$NHc7aa z3^)UtF&|d;swoPV&mMDYQbR7_(&T1g&~oI!Evdh1a8(XmfD`t0hY>#EmTgc!`KOCh zjJysWW$a+daAL`@<9}I@Zp*}Rn4dug0-0UpvHg9fXO}S$6k@&i~N2|nEIT$q_|f(I_UgEwGB5tXmS@h$SX{K zJ#?hR3|O90IXF}a#TcJ#IZACga!pLPo~E&$w*Ei%oPuE`OMN+uBfCpSb?fQiu<-6E zIlWE(8tve6M#ufm$<))-)U%G1K|QT4qf2DfRMIBZGdw9hdV(kHKO-9cGa`-0%s7W`zcWBZ=TqUA2eo=6eYA zIfgxR*`>rYjoFn_eF)2teuJX?E)~g3mRL6K6(->wR-Jm$tE?p;u?z#-OSp?s zGA47US4|wPUiApA`LSm^j$v;NqKSi*Rz_rvqWLjBvo4G7KTv-_+}b*sxRo^a&*b*4 z#VvXGdT$xO5uVvS!Ka_|7$%7U_1K5#&XhU*hpO$UaeO5Uu-pLYV{3%;vMzn#6xp0C z>3w$_bbpv!2Q%qLq(AEsCeL!DE!ramt3bT1ik>0e!$r#|(Xk=i!-Lh6?DIi2=Faho z&e$f{!AnV!f_A7a*>k*h<9XLTM9h$AkLP?|JXxh|!nY=~xBP_M*fz>i-KC~sm z{!^agPrNr9Dc@9!3~2;{h+N@loy0=|h~S0wCasq8*Cn38N^Mh2(x%iDjfAB@zJ*$_ z91%U}L^_lyZW8T~EDk8==zL0ZAh6V+MFMmx3Pe6oV2{;;M1nhu21mZ|MID4QV#~8; z?fw<*s^gws1uB{M$`PF)W!57`A!Sw~K19wGWepw85LO*GRz+50QI}Jl)TvR;B2O(v z;Tu_wm-1jj%E!qygVhsypdFl*_8>#bCq4Bn#PA%$hSKP14VYK_N_PYig2RtQnA<_J>XRwzN4DxC5W&eQ zVSEn-3su?E;S3$<(hLnowd>OXfxb6Gn<-`#SQ^-*+DHccC<~j_W(<6A0Pp&t;!kYM zt$u`<0z$)OOhQD(rA<;q58f3#SVPSlS7o7R_X5q7JlLG8N`BaI?M*cNxS;Km*6UO} zV4`h)ZN~&dDbZXMf8#+1=>4)5dOuWJuQD3;1Wv zOc!okv`gBtA0Ca|J7zI$^G?_fI^awk_F_-c6>LCg?EIQIbYIvAP3esIL|3{hn&OiN zL}zNt0%S6^r2)N-M|I3G+mz3^ojFCk@|?3`p40pEp3@Z>>iP{gqY6uYckg7o&+q&3 z(Ef$`vHMbA2Npbc@neK{?%nIyIeX3a$WVJ+yC}2K0Ukmj!_kG29^<>}k*#~CN|bs? z>QPHZ^%^82Q7uME8Wg3`>cg@PdK<*-5uST&w*jk^_-NTf(6=4N0L`x5kLT7^;-`q3 zy#NmtT=aiKjt#mW#9P3q_Q7;+f*=hjSrP69Egl$m!}KR~Zi5cD__CRUKF^zA)(N7(16{g(#L!0m`+53LVvq`j2F z$m^5<&Ke!s9(An<7HRF<;CZo+a@5HDl&YcG3CP=MX89bo(g^+3^I`i5+dcO~q1*6A z(HxaLh(Fa}imkt>JB5_s11o*N=nuUes(_#>5qPb@EzZaasxJE!y#p%Xf$OxO)40)m z&fpBH?gJLZcGT4c3p>!07Ht!%ufk9t5kVL2iORoVE9f~wboeEmO$9rum`vKWgh13O zAUiumN~;)50OCR-D;^dHl_AkO-vQCO?t;cE!WMg8&{-Y7MOapTkGXXtq_@Kll+^kQ zIj_Xe4L~uDUWV(qlOF)Gg=E~d+ov|+v;Yu-*3Xg_`+1yYz53In!^IX8q4avs2MWL>bIC|dzl$Xmg`pdbtk29z*U9KgZ75yL!e zFwZQ326^QS+RNBtZVm<|6%a5Fu|U}kJf

}n_2Y^z;!@3xd==xv+Rm@V{H_- zg=9a{GfFUoX+I<~s^^2YovrlSzR@{!`U!0O5rB3-QyAd=M9ZkN5A1y4b7=db+9)Cj z_kJYU;TH*fheN?f zNOSezvG05fb@iefa_gowgl>zzen}hF-b-SD{hD<3swS|lt7+HvTDSgZx4U@Yhq?C9 z4|VU>Hb{3zxOnn|zV?hC#J@(k=_%>ci{1gDfqkzoz4?<0L7;hQ*t>)RuMxbPzs$*L zp*A?WOv`C99j;ISh^)ls!1+Q)2cf9QFF!To6Qy>PKDg4O`jTD; z<+E=MxBUjan^7l#`wSP3(i7=0&w=)J+4)QU)h_hf2WF?)p2_Fh8-C_xxeuX-V^?BZ z?`7N_)9=X_r1!-ysHrtT-xkKNX<^r$2j{DvA>7%`9rZ~N)SI?YH#CY5Ma`SO;{syN zRv--ON%~>6N~x)>(5^Q+%okDa9p+(u`;Te9i2eZ!ObMqw62_nWEMsEVK2qud6YL-= z)v#ZceT2Hv6|4{k;4X1tCdSrfs*c=Lk z)O_k2;(SZloPWbHC@ePU8X^9pU>|{xtf@CPqPR#|g}FxwH#{DKS|w|MhC%)g(?vNp zGTa045Zg0erMsoN$ZN;;Cbb*Li@Y{c+7s$xzJ<9+eZhN@=Z*GF;?>9zUFDz(`Aot# z{4SQctt@`xB&?u-mpzLQP7>eWDUReMwWNlZ%L*J!vK!u&f^iU?H^R+)z>SmE3Rb7+ zjx0)k+RG@8Zy-ID!OeC7mPz&-b{xk}BZF}8xf|vrdS%YZ&xj9PldKPx258_c}n^8keD#+VmTz8k$HtWh5+3{o4dIZ1iFSY+3OBO_s}mO*&;XzLja9( z6f%J1$HWXq0Gn_$+|lykWQ4&0vm2BEe%>nz6noJy;G&1G9v};xZfC8>AwakoH4UtD z@Z9nCA-=)k$8y*soLy5aXBdx5Nl=MT0HV%T5b!D**&N70AF?|bYoYA5ml*Ow97$gtWeT_pA4V*}wR z(+jdMZXKkn&~>!767XSh#k7;j4fv;0byKsL`Qmn#+fMRmxRLqB+LPP?zAfjA;$Ct! zyjc-`+r60FPVva$BT&4*rHCj1$u{Eq=l6?YIf@_ZS=_sb@2#K(BnEjHM zA$#Q}2aPRrZ#}dKcoW%y6-rb0dlxEiRo7`h=xzD)AFWo=bHv6{cRc@aj$X_J9=<{Uk%OW0Xp^KkY7(cDVr1GoFPZvi(p{N?}7b5MG{!4FGr*JYgQQ*Aw5qtSeF45$C0aT8bk6EhMeP?VaK zp;SO>`k<7=5=KRZWhzZ*T$yy1vlS-s-Mtm@4f5adu%FZXka-v&AW3Q5I~>5HZ{P>WuCK!#B3E1Cnpjx? z?c^m;YpRwLhoA~=IhJ&mk*K_6oNdcV?=!AmSWYzQDAXK=wg`S64#I5gN9NRND>W9t zRC(dsd=EM$6CC08}53QhcaXC~i8S>j*4;2M&4poVt5gd$s{ z+8EH}M!40{hVCQ}wjdd@-WhHI=3vge#$1|LW8?l?AI~AE6AoCCIbAPQic}LxHI`f} zs!gOV1fshbnov?sX^~w!)+z22yBw1gIMkNl8An(2j8bQ5+JjzjQ zdsP9Qdq}T=`caN@`0Oz#SG&^;Ii)f=a1jftfhREJZS|%F$B_w1rX3rB!htHQ9KeL) z(wjhuQzBrZY<1b$zkK?Sd}=H;tDy~MP9_nZDs`8!Z`@edkA1RAb8Faf z{?`A7R}n^$Tv+u8qV~utf>!5wX>?-}Buc`ASJMC@w3WFFU}0pbfxn}MmGnPVd4bY+ zn?f{jRFf2w-GH zgG33%%gqKEA^|Mf?GD#+_tC){dh8{6(6h&!+@jwY1BnB4kU4%_YZkhnUT#k}H;i5$ z0?1CjPgm2~9OmGIYhRlcq{;;ASZ$BC(|l_QZx;bpvs+(xlcP;x);pEgD&FWT0Uu^< zR7t(v+Vp;Nji?Aa&>yu{5Ef{g+w!a3tueE!L$$W>c4h}5rT?U_V-`3i;WiOO6wmnz zQR;v|*&Px6p})=@M~=Y{x;SME1$TTgg>us?;xVNrs@8A%PFj`NHI)*Yc4+u8HHe0G^`hU25V4z+NN2x?o@4Sv_+txc-&Zuo zqpZGs;cUQ3V_g*RY!8(hBN;xdsK3+^)}YnEe|WBC$(fji{*jxoBFsF+qAKfqQDOfJ zow(^2_+5Y}%nj*%WF$6X3`ZjG0n%V0*cc@eB&NEnX5KZc3OP=ZrxO%Ng01DzJ#E(L zhzdG*XaWq;kv6B;INH9oL-$|Qas|ZDWW&SFy}P2xcJMpq4ByYcM;LuR9Dd@~_T(Vp zb@BZ{V6Y2oWTX;1y&5Bmd^fRy-{vq3AO$w6oL_FqA(zP@gjw|as@=E1?rl_r9LI<$ z$T=V}#!kw@_&Qn&fuhhb&xb3m725u2ySIsZ6_BO$6*%uX@M9DUex>0$xdRg_?uBhO zogvN;E_1H%#bLS){k7nhn+5%F)e=E+X0iQzWm!g)D_b=MsbBl~fkOvIU6>R{_9nbt zQZlpWg`j+Fi^&%7NpcxJaN4Wp!&S6VUj2q$zD2|DZL!{1b2=BgTRpGz&+{)Knl-}{ z*(Y>|)@iJvQ!2uMnX}cG#&19BXEsKJtPvq-cZRWo+HZhx=v9fGp+Tap~-Nr1X=3t>7U9((&Ddw zLeYu!w4D_x#Cab3OT}9_jCg_r<^Fj7fe1!+nI4k?d;MX6m42YO+g(Dejh`KOWExPz zCa^jiIPX{lv#@FHKxE4)I9Qa=3p40&C6t758~3!{KUO2NSq=+V?hktd$&xQqxf>Pm zA*@msj2&O8qxq$cz=cWPQ{q^tUD=!SfO@&MT6MeuG-TC^+ZF;4ZTxoE#KrIyV}gvA z1g1EE7;7JsNU;!6wMXg~qBh`aFtJ6wo2>HyV|0Eh>Tu8NCFyyV&U zaeY&cpb_&-0Ej$eT!YUbuif2GhvSX#950W%cAlGQokSR0dZGNeLl z%*9Y-m=_w2Z+rPxH&|~952-^ohKCN;P=H2Ylq%6Y5;w1p&`2`H5rYT{Bh9bckJ)yL z0>zD*KK6`QR5|^wb$2i5^i+)r-cX_JfsR-Z1c&!4laajlAwtjCXuUAa`BxN;0+O~m z3#0Az66G}gTkvd0Tmix6A)x?cn~+iuXy}ESirH-4h{}Us)7+!^`MFkrZD&M<+hbvT zWD@L}0euGmSq}k))N-$|J{*yW%EQ|&OPkBJC4Up9M4t&K6-!d_mY=gZJ&+#_*W|*inajLDi~~G&vA%d zemNdwBiX6gG4&po#1E-kY``o%5dwZK7&;WUTIqE6`XX!%ilZ=w(l=pW)hba$&Pf@-FUiu1m|crdXi$z2UEiN<8y-nkhJ(5~WH zX3ib2VQQuc|qiPP$aNaoSI*L|W!C)^V-xHv8`k^*+DFH^R=wj57=PyLUzsxcNcd!U45&BTkB8#Y` zxmw%oOF{`e_B=98XIT=H>DA{`Xzg^6sGwc*-OGxvQ|#+~Y1^2H2EZTly+Q2yP&f#9 z?K^ym=l7;=9haw44h(#FhWwjS=0M~n5500;XXIa^ldAhLcHrtQA3^tOMRq4LM0JW# z?um7M43jj)LS5%lI_tsUn2mTb*qKE*AJQ6DsFqG+ze`(Ice=~$OV@FmFq#I}zb3Pf zGRK5u6D*?c@rxxv~fdqAmj?$;HPoG-&aY{fbhw=`WI@mT4kL>PjJ33q1B|WJ)s~f%X zx8S+0Y`qYUL4;5$J&W`Tby(={$6Ug>GCRHoyXH;vXTn^R_um>|;LAZs5aD_nhyE$ zkbbMB1lXO;2b;8hV0;i3o~}7EgKm5KxNEMa1t@?gGf@om4zh&Ccs85Y`eivPotq83 z50K~bQYzO(r!93-ASEYN&Sj6^RB8JtUfAg^j6#J*s0mgWuIHMF+#cdjv+w+EduUi) z)>do)i|pd^?PB7CFP8}Cu##D7)g8lLBFFHfY&SAO4XNL;ZV?G1TQc0)T%(}&8^526*EtD`lHsGibrS0d3&MuCmQ zq>d$|g`_5tD;gYVeua*5dM*~XESvgZn~514GCOZj2N}L^ag<~5dn5R7SD`c=`NRLm zRp9+epJVR~J)fNqZZU|GQEySJT=>RUK>7{Hlu?5ZL7rB1NeP zO@xIk`KRWWum~Z$oMb?VY9F?pnO)MKaanE_DJZq~!gUC(mKtAmE!zh4#NUvLZ;dqt zEmpQw%cFPU^p{#4F0UGs1YhM>&POxTCT7UW7!EUlXFqfQ*``^JXbu6NT~nZ{TO5Ke z&Vzo8JH>DYFNgS?Uea)e$z2-!4VvS3A6)qHrBA09D|}p!zR_JF2K*!h1erhypYq`% zeBPt}eSXecHU{{~S12xCs_;6QHG9dmvV)su+_;w;Io|!jwwr1Q3Evm?IL})=E`n!6 zq`dnbPXhXWB8DECV-zP&s&I*WrZ^S+oTt4Q3B>+cr zZFL2e{nnAvv|3%@La~AZD(py#7|Ftan7B-AVFNUZe^FT82X8~LSVXjm`z?Oz#O!e| z;ztG|1OK%5U9|d+lq>NhK_V>Mv4ySN%Ec#24h?jZKs8ZuBTGTHdlQc&NbOGW+4i3( z+WL?xcluk@x6VdT3?%kgY{)L!5io%d`Wmt<$}1Imc!`&wZKyUw~nGG=YTj*}Ql@ATPrH=PvE2$^-f2|*~c$4`v zKP|A=?V>RMBIMok<^kwLt|+R$`CT=Lm%vnSEC`XpNI+2i@-8j0BjAbG?&Q)Vp$INP_;TIe?`^2s^t9+6q zxacT3>uEbM!GcnJ3%6H;_9%@hGsQ3lr5+}GkXe#z7t}kg_u}WqUkT#K_=l02 zHfI`bC;el)doTPjkCEI=?wd}E{Aecdl-n5=BPL^7Og#K#pY(1zhzeyM%NEB<%Js;q z)X;&-*(l{EBw0~ob7AQcELVc zYFsT(I`4Gz3S>0qMFWC>*j+=Gfl3{&qOSpNT~LPEr4~6K`iw=2yS(#sj+aKAidom~ zRE-rW^=8Yy2qqF<2`qN4Mis}`C_CDtcw`1p`onf0>-x0w$rqIVz{%Hmlgi}-6}IH; zC0Y94_u|&%BvqNPQ=Y$=Bwul}Ur~>}iTwT5a)ZjLA9_GXr7Wy=d7;#;c8~VNwxv84 zVXmbP_{scokZMPqnvKxb9neT2XvjXC*vu^jt4sx1lyGx= zS^L!0e34&K#+nHI5nK^HaqjAMiKgYGwI!XFMi}e$2Y)wfXSC#$@T)IDok-Ynwt21P znk7sIQ57cHE+2vaD?pk1aHUXm-~};!Mh&x3f2A6TtEeAgqCq)V!RR|{ZlFJ=Eot6c z%Ovc!B+P;mQU+vCd}{TKQn6N}McQYRXjm91#CrY3gT$8XgM|B7i6EB3?Z zE=@++oj=ScehN}ufs=Y^ov|!_bveQo({I-D7E)Pk_AlRTk^q72(nuKZAqFq-aP6A% zGOa{eS3@9<3n%KhRegnLl0ZnRBI48x~VC3Wzg&Jh9dX-)A2G1x*zf6Y;57@OIZDd-s@s?Vsi+OC> zR2|Xy9yL3w(5-}yZ>Zw(l{0Z%mmZo0RtA(=j4m{vLss2jfxhU37rCXPsYoC7jq_Eh zcCkH@nI24<@>AP95dLapvxwD zD;r(XV9f23`JCM$LN?}kff1KIY;YtZfuDu3SvK5{hfW-6{Mid;A1FSM)@$6qgV&6K zpwzjHP$7?eTWylIv(n8G@DGqq1@9tH>RHQO-b(@Z6@WYryjr&H14JgFvFYeM}H1)rI~N;8>bX-04O4)&30_7!UOm1_1C z`}pL(xIA~+oB!Xghqm{&}@XtLCL-~i$mMV-+b}*@(c!j z*|&)C86;c%E$jUkV={kOidIRY%_Q1gQhb7M2ixUJ_u9OuJvF#V7yeQHJG#dUBYn#Y zOH&S}ydZx>80$x%Vm(=##<`TwtC?AS-8k>}Q7ZvRBbqMNzd7cm;52{XfkX)JO*9fLtMFTQu?powOQj zt@N9v7)k!hU6~pyG?#zaW($aOM&m4V$6`N=1B&|M(7rE=HvAdM($;|4(DcjZ#N@`G zy|zew(o8&*7!|{<N2Tt2$g6{W!<3xiLfx{4c8_sRdj8Oox)&G>zCde`;|5hf zu4oyz+yQ2)`W)c>@`rfiVb03p@{2}bbH&TPD#%5i$(-W`a^r=G19E1+k`}6xx{-Nz z^cGY-vTO`DTJw4>kxc7CJ#3FQk*Q$vBNBy_KN_@sKD!bnloGM!g1H(I@(q~XMo@3V z!|fu~eZj;56hqRyG*%aBp-A=T7nuKYNF529;zyWV30c29)8OWg5Bz_m%U^kM2rzJn zG~3|y*vK|q(;F|Z{@)_?N|m~wjz4lSray8qKZpN7#y`R#&aQS09=0|NW`@o#mUd?L z&Oa(K|M{I4H#Kx|{Rsj5Zyk|XB{>CPCPZH~R8hr`FYZjtB2kO3N+u!`Cen6n^hgfn zsV1YgYQyXAo8pGd5%m5_ZGc3rXQz^5UtB^x*wQ7Li?--Pyur3Xn-u`(e=b&!@A<@7 z7l=0AHD;ULXN#L@3of?ozMEtjy@<*uGC^xa`|LuM*!&JbhhYgDvEjP-EgBp>m!2YP6>wm~;3lT4Q?U?WIw%ma!~&5;~bzO?sFT{B=;)GyVc8 zmjcdXL<$Z!`O=`F`F}TDAU0M?BPD7i%onjI4Hp$)yCVao*$=FSe9q~Ac3Jc>jPICENy^VM_PTN{I?$#s@$uf{{tN94{)^qAHXU8Khc^08@g$E zU?$8QXlP>Sy>B@NajD|n%8?Kt@g%qeSCI$N3FQJaOQ|+%4>|>M{QqcOuIl=upzNEj zzjEKV+&>;Zo?;22b#fKgC-$3xYlC*m-4b?&lm`mJ2LWY@aOC^}uO^8Mgv z>}A`Wu+I{-)RFYZaQ;C9@s_p~>Ip}$Xxm~rH%t3oEBC4Hx8?;RZ7vMe6qwN2NxMWs zZ50s(C8zM68!Mi}WrI-PzIN(t5dH%35y5bCW<_^)JS7tSnCf!z&~L9l$-sJ zD@;X5ef_@$dV$h1j>eo(LkeMik6*fPWi?W&Hmx0eCz0D)Rj%?7 zp8g@5+3)$xiJ!5J*4)r z9k=gFUAK9Ha7(;#NkvDH;vVp{nJ^&mo#wT<`dzbAt0ts&3w=WB)i z(QOs^|2+|+rp7jshW`mRI!W0&*!=HlDN)f?KoLUaTX55)6{EHi6A}xaFRW+14J|+f z!OUj0P!{poHSEAU+q<&a%q6>=y&E5b@DC7}@Gy5%p&{$v8@%fF7MKB;UtP@VZ~Ft4 z7wL)Ow-7^@uX&j517cmnD$?^F7U4yDw0MjtFGBJ98CM>PIc0-dBlvGx6%t>~PMp3Y zB=Wvyg1{cfqbt1h+rPBwd3qwSg=Wnu*@{vB=FRSFDE8Yez=2T67cU_A9EXffBvTmD zrl8#SEO>o73b-T-NxY)4`Gbb=R(nFlkkSwf7p7TTUYtvr*ogOy@^6XQOI!vwi-<07JqY`u8ET5U zn&pZ@D~KXBg7g`o_->I9&sOhYG+0|bM}3xgQ)a#An4SAzBv>P|;BUh&W5BMM>j2v_ zoJno(xMF^L>eD=Q@)(*uukRAIF&mDSAe2hIE#hF+cZU(|p}_HNtuM9Ca6P8DE=bw` zMcFw8X%a1m*gk+NX8T-t@1%HkHBad>1K;mNgP z(1(MW38~wIwwlGr_NRj`u**WX$t9*U(L1iw|1Np7;ftWlr!DzVo?5~{9cNb$ zbc1dVQWp%=nL6W=VD%_3SwwguHn);qxgNwiZpsJ}i%<+zRSYti2qk;B%uIvnNog{E z$R8Zt4m1=yU=f6cTOM;!2=uZSMgZ%m>{Qn)nl18p(273ReAl9%!;6wTf-jEMR zncMHumPc0K2ol6i#~}0{mI_Vh#Zbt%Q!RGP*jh7op?@@aGu;0#IpqXYszQQ>!FD`M zv7LNOTfKb5)a?9Pl%2v46Ne#JgtEkNHPwy4e;ACDeoVwytG=W!#PHUkt8By~*M{xN z250X)i7#5cx4OQ*>y>+1O$~?1l6@N-#lNAX`KSh`x>+?E)sPR*-MgnlLVD;l`p8Cy zDPp_VeDDp4BZU2w6*L|dG4A-PKHCtG89k+j<%h47k+^0+E6mdePwIf4kVhuH6mWOK zggT?!|NWLKv<1FqGHNdIV-vJW-V*&vYTd30GwF=PYG3<7i^7F8#>M4NPFuu^^Q<}2 z?AV+@hmh@$E?%=hbMaSubTmvFP1yt~4}nVVwI(&wm@)lHI*Vv5FVD{kl#Y{vmUSdu zIu=a{-5gS(EWMcr%JObr?t(^Y$g;xuezccPmx1$R2OEIo4SOneBf8o+!^DGTDpW)u z9QQ^V)2CTW8(bBHRyv=PkbhQkCZf*I|0K~uwI#`JMlWjP$+r*i0|xQ^lW2#_=6*8r zTXop26uCMVE`i!ze%v{Eb!jlF4nRWT_*>}8q%~AxP}Vd_Hhvm`W+uVw8+DDc6=Oo1 zkTJPST6AnXwXwbI3Sh{SX`Udp-Wk@E`l>oIgXg_CD4%&}$pzJNEOE<*&~lPuGeh+~ z?WymRt}5I8l-ep_Lh!|0Jo-`cS4QTq%mL1|#X1nS&M+H$L|}Yl3+L4dO%|D<&!7J_ z+wwZS;AQ^s%*cHI?@n?5S=jw=vhzQ(Yn2z6r_#{?%M*LxY0z4D<}Pmm|-wM-?@k$-V(OR%9QiJsX@@=RKax&y<86tydn{*1KBB@7?3>6GJDFHVhiJrqH2-kH(E_6uN|3=4t%3v$LnJuRNN>s!h`VwUsHG5+v=ISUzWO8J0>w9lY44p!MCvS<{ab3wz*+MDE?I#-Nchu%h1}Aa3gCgWX$( zli0#}0ziGAH-@lje({>RKTl<{VoIL89x{za_IPbL5G>7{_)^_xWUJ!`R7x|)wH{t#&LtB}f2PiN08(x~NISF8_Zn1jS2TNI(!vdPF zp=TS@skp~q9IdSh4o^_FDV!gxbq1Z7ICr62`*OpLAqicZM!2LOZBM=uoX03&Tl;pf zdT#zLiwSc3Cx#EuY5hh#vY}enMq_nL=5u0D~NLO_!X?`_yrz+@!7S?y| z8l8QNJ!4}Uov=H{+&6UdE^P-MICtHzz7e?g_wb~+4)N1qlZJr6uU(<4a&U zhv{&g=10je^~goPyzlJuWExx%d7lJ-(=YR|z9pbOf-ijdOMD)o_&h{&p7$vSf-nrx zrvPIR(_?Ii@qrgQN*pBzYoyQFhC2$$v5gaQF|hwFY-C;W$5gi$h!h!KhqlX%I0;tX zoLwhGybNZ}w3vXtYR&5sagN1q!;f>wYRv<%INps`KZjapUQ9!CwdR$GWE-+P?rYju zi|z+=AV?*D~qX*)$k44IaavsB{VOt~) zX*;w9=B=$CAMZ>;6o)J??^FV(N9+nJN`M>>7w<|^qofdr-*4z@A`Sw{OS*cP_^a$% zLGkx**8)YCgt&Q^QrfovdAd05pJ`IMx9$4#`12(|r_xbTMQ0Lt*xFIj&{-3u_(H{B z^99nN#%RINY1(ocds)0j$TLp6W5E(5A^{pI+6t1>uj#y4(!j=fUzE4)@$q|cpBI?C zK;R~`(<1x^p;L_cEe(wbx(mh0XWEdxOHaBF$&82<#<+k3rlakvXqh@^3a;NP@;mR3P;v1^+w*^IjF82~uwPc( z4a2HRvg!iZ`4BIShCA>3MWvat1`y%k4rY@#>>swNX3wXGI1L5XRyYeIUBdM=)ipN+9iX9lOk?ZrH-r{#RN>W->JV{zn zL~*}*Dpl7~y3&eM66{DAr0df@i?=T^a4Kri1>qC$|A7KvOcZ)1XT3-;BFgr|jdC-E z_rzHVC^kuii-sJtt<=%z_SmFLI_w3`L7w6dAL9D=TRP*6-jb}1<#Hq`fL;nYj^aSe?# z$WKPC*Pk(g6cI~^cM7o?DmRYLcd+ynhI(o%#&HMBMs(iK)u#mA4ApNkc3BfD2C zwFLzknwrkI(AZBBJopdQ<<|R(-MNIq#%8Oj$xdpSaf1j60Vc44BtJAUUw}8JCP@=+ zsveV(-5;zrQqX*3D@xR4&sTF1n7^zbQxK;6&25TgD)0ZMxVz<+l&32f}USl`LLpBk4*p%8NlHmm9g?}$Ph^{+$PDA^d z@4YxO)Yq3{Y2{(#io!0tTFTZ*oAJN>HD;I5 zKtjP|NAgzR)z^RdyY6BkyVuAW9p-a@S>NgDS(wzRt|`g>PoO2 zDe%>sFCAi%NM6PV%{_uSpvjLy|sr zh#wmh%&%M2P}b~Xq-%%_1t3BWClIk|VT_!n#8O;YGBQ{k%iSFG*L#r$E{nl$0b;CB z0TQknO=i0d&qw$u%Ddu_CiwVRA3jijsHldEP-sTvAt%svUk*O{4naQ?c>CfB4@L9U zqU%jrs2XfxrkiYWrdw=((=^^Hazg8E^4M>AFhlvH_nAUI*uke&`+)w8(p>usRl^?Y z!4)J~&At-rBpw~5n`)%v5LiOG5QR<5xczYK(3Q5Tx*9ERy7Zml0&NIkBdkXJ<>rM# zLOQvT@SVBBMLmcoUEIo?HwmSu5rIJ`$w=KP%BlV0su&DdMyDen=?vL>Y2%kaamlCx zob+FS4BOF9Vh%bQG9or{jreR1M{*gclI@qc{()C!QaG4)%qEuqxSe|aBmjABDIp;@ zqo$V8_%{1=;*tsUtG~!}{h{TjFOmo_GlU>yaT_~`H4lbK zGi?)*lD8N3-&rHP4(Y%c%rn8d^O=CG-o~2|Fu3AR#L_Rq*hX`EN(_Ea@D_!^g9I3p z-E%lTLLjtid^JPSIT!17ot7WECh?j@|4MT$%nd&HCQ>2%|jW zh(k$+y{NamL$=rDVj{R|HCLeR;jt_5v8fnf>N6uFb^Mf8qO#N?dkp`gu*10q*(4e2z!zbQ2 z#i4i#5vYv`)Y?2$xJbtCSuy86t#PMw;76+j#EJ!s12 z=&23S3AJg!`#+IqUqV&|0fI+rLLdc&(M$Z0Wabx1o1^e}hI@{1l0+5d`CuC2O_s3? zE&Bvwn>ZGYR}zO?Y~!`6%V@{D-%}LSPbjE~<|RSTb;8vr-Dw}&!fy97SuXJYgG;_Xx`F^bw)&}--0~>aJol!f{BPoa&a?<2EV7chK;tuYjjM8YNgAQ3)0Ik-$x_(U4sWeZ!@7o<(5i>t#btZK>ah(-%2EwbK?Opn1J3Oj$l!4+s&G1I}WjMBT=tCA7hDD?HYD4t?P3c35plbFn#_S`Y=s`w0 z`ezos6Dm&!a4>>bl(TC99+WreXXa_HBRoB@b5Az&jRs;q1#C`^*N#M?M_#5FO9PYX z1N@N69N7~9J1qFOnG`88DM=;fW%~C0-RWUNDznh2RQQQ~Q+hB~SGU9G$aL$}P& zJXQj_c@ge&SYBX>P6Aqmkcvq@%D!wa8Ka;bo&zX?v!Zf*BvR8}rturAk#RUM3>^UQ zN79hW^?_R%DYq+h^74929c8FuFhwl8yT_K0l10=qk1t|C9x^ifCIclp+EVqYVr>-> zKY-DST>uPdlVlQ6Rh}Y*R>8;>)e=z^G+mGm4YVMx= z8~DNymVu!(?kTORJWXk3*ucs35bkh+fEGbkDHd2s6h<-iDC$Wc=gAFH`2?j1^LT#jEXSkzN<$!L zu>1*Tz_r+3iclVYCFpYAU4=0UymPsidJdz_LdsWOEOK3E=v2RcK4s7Pi49`n0h;8M zlf`!^8tGG$ie~ppx3@kHyNbxa4CNktx!@TLMsp2JbpCa+owiO<_1Vjarsd{ea=p1X z_QmcI;^v~S?~Hl81AL8tLE@%XsH2hGEX;`6SFhHH2Uq;(YeUW5<&^>OOgVUB+7&3i z#($1$fW|9Q+$o=`Iits#g~nP$y)N5~*0!(A&ByRXY=wlH5UCH7jqZaEU*pZa3brgq z;g!r~FwynE`&Zy(9KCO=j2g4kW>yQC9^|K3dQLsNNgmJe>U951xa3l7wE5bTQm4iy z717ShfBp6+p=BMgenV>}&FPQ$b0UzxiWiV9H5}NZ174-4ZZX~{+$h7)_!c%rOHs2o zQ~sxeGu_ga*Fn_l2?Mv%+w0-du%`E?DE$}0I#F~plQ=NO4S)ISf(%hIB-XjuaccmINM+ zq5^ixo$h-3WB^G|ZE=0P48dgsTzpz=0_KT5XL%yevBPwX^16)#CglkLMA=_zy?ofh zA6kD`cz&CbXu%se4y)~Wk=3`{oT96F2i__J&BQ$H>xzzQ-nzCZrU!l;w%u5tr6LJN zhXhnbIVgL^^d>B|WDed%B}C0}{N5L`5ZaQa0g4;+2P5+;>3tzTtFwMg-NK+)8hS&$ z$?=JyWL6>zwLyR3XIKJ>p~>WEYFbjpKpfaawG;;k0`ht_)(PSSp8O{A5%RQV(H9k= zpXZxsW+d@%m;r>79lNFJG|1m`BPCUTc3wf-v><{GS3pFHu@r7ssJ^BXAj?%j-X^Fr zu}wcvX=bQuEYa2x-q_UK049bk3CKY6`fN}8 zlCD-rE%&oM5PzMdthRVvau_mQBQn1Viz3bQlL~e={YcQYXKg%^-xa)LWOLTik@qWB z+_T;Z*`UR(m&y{GrYxBuEv#}PPFGPTK!9beDajw?Z=>97sxJwbF4IyA>zU1LOM4b$87hBI1Pm^;h+rwDh8 zu8m~EwW#z6UGNOm45axJ5%uT;V1DtyQu=sJsmhE)FxN;G;2MjpM`Wiv8WzUUh@-9 zUrhAvd?52sR=7-eju6XmgTxRAs68Kl_7}y?F}A>yatdJ}{dc)_JZELPuG*P39`APfYeEFC6@&q;(~$ zt5^Cz@o`hBn}eePX3hgLu5{F4QVD>7LC}W`v`tCG%+s9Q2^_N-+x!Ly3v+P{oJnRI z#Od@TraNF3y}>-9B1veD;yxOBpX|LG0}<~w(rZE%{r#%39*o9k1ZbFCneZ8g@h!-99)opfzhw+F0!Q=VaqDuo)Jfz)vYLIyVf6Q*?AD zm~8b=)gFy#;72Z|WdQdr98^Gv9^<9&T`i(?u={AR79A>%AHizW5@UUo6yx$Ph5L)2 zoGbhCpEZ#$q=__j@+UrbQj7breUzu!=!YxvojtfX=^E_WIvfP@l`xAq|Vp9_oo>hm}l@v{9)=1qq?!-na-78Le776n$KbW1Gqf=iv z1qUDpdr|YaI)TY=|2_t+_@^>%;m0~y+)@!ZQXff~b3nYypIK_2#QtNBqdx0e7jdo` z#LTmVeSDf53>+*`h*yRE$0+m<_VpM!D^s*z0n7kHGD`hij~Dxq^ZN47=Zz2|kZa2P zOD;$!Y}qY7RB((a33ssOE7EcAi7cefnVEA_*t3j76PHw$h7191KZz$y_J!mtvaJP5 zQt=?{V@-dq75QDjzao4^jB{G(f_YmXGvFlQcZq^h#&sQxhA5MX1+0qazE(E|;u;(V z{$yM5DX3kJ^n;g1%r9uGJ+O5k9)u(wK88;ypgq)eun>G8?;y$7sN;XQsSrJ2)K+Ca z(?#$p&zzh)+2q~g0AdZqS1ZJ$~%;&e=PlD<oEa8o;;&bV(GKFbjdBH{U5*+&rJ$3BN!Vjq<@2Dy%-d{7h*r2wF zC?{xx@l;NN`VdACX&$LOwM=IbVpcu#hdP( zxqh-Xy*_N_Hc(4-wyEj>Fyq5LbxAOw50J3fGgN#;TB45t;3I<0RllTZBX`WgMs@3l z00t&}pn%5Qy%qnI-J&?~FbGmZvMBUraQu>l--i4&0~3UB2#C_7qoIMCek#HQM9i77 z^o+)q1%XtHfto=oB6$CKb=6X4(21e4Od9y+fa;vz&)XvKE|$=;vlZ#CtgF7~au+TmI@$UT}#$@e$hAfcHC`vVy*#4|4MMtWSOK8>gE< zegp|xE{W3opHF7aMO8(p(vBm3uB*gski34G4##PC?u4UAbr^$<5TDE9*gp)d< zQGMTg*HO$^F(V*ojd^ba*3Tf1qM(PNczSO}^!auOmwlEvlXqoHvkBEAzh*3g?pS!H z4U4k<%gXe?u~%v~jrmHP)LZC0QHCUEMj-N8w#OS_)kW9(DhkY=ia>AQPKoBN4KkM0){7+qaQ9!8i7{o3U7 zD~A3~IndZ(%Yq9(b<@grzKV4d7O{xJU1ZemxoZL0A67|hT?}h7!nCyg8v7$RWX*V=3AhpHiOWy{xr(bHY7E7h=210#Jby~|XveEE6Q%q49+uiO zPOj4%b(CBUr)h&viy!+@bfdw}V>qpe1ve8!#3>b8wnAK*YG78LNZLoTs$laWRoAOZ z%>6kl^9~le%qkpSSIY(&W1|X-KA^}oY``cz&I3*0iEY=jJG2iHDHmVf{&+e%FE85e zTe2@N(l||WuvH%)G`P2zK)o}qagCzD^gw@ae(z(mT}a93ltkyiKSC{sMqjP`9Dn&8 zFSEfzO(B1fJiO6eAoH$}oP|!NNaTH-%&E4u(s?CxHc(HI}d=>3ht z@EyLe8$B>jT*Nz|`(>WtuUB-Kkr_J*Z@;!z;^|%+TW0SFhdT~UUmjiVuh64c0Q&oY zEB#ln%l^&luP<2KJ|6IXc#OA{+*^S`2z+%&1xI-6IFkH9Q+R4=l;lwqdi}gmH=y9P8WZ)AZYq=G`?;c+y2_2F>(`U12Pr*$ZMW_4ahvr>`Kug4JU!V4S_G57)0 z){rgc`K+0J?QwGSi^qh@JgkER67PPmLr{Xk2wYnqQCDk=79j4c<7>(GsKyNTci6@Z z6c#01xR#86`^D8T3+5-Y4RP5aeuP}ykU-(rzWGeO+>eumC(7>K_)BtcDT z;(@8(UuH8~c@p{vv2* zcGOb@=siLC8P(W<7ruIAfSitg==oOHaNI{SGl;;j8-H*!Y^+78zm-L)yET8;k$3EQ z-)qDu#>isK09_>sBh~7N9KT(z1i)Xa)W&;&=X*Uv;ts6bN{te3?Z`P6yOgO?E-!pY z+;zMrTy9vZQO*>;2)Bt`m%OBm7jedxyqB9%#B9G*Xr0Ts`;>Vr_Pk#0TJWZ8Nd}VH zF{tVzG{U9LN*nU2(1W-q9818n(eWPkgVRGdhoRfb9`+^ZqjVDf%$DlYV4*zh^639o z*T)|Y^}HlOF~F4zEf9i_MjT?5qZ&#WVjyz2i&ph}5Mo0K`>RQzyl*cTloFxdsa`pJ zF_`As!3ueUWMP-ViiwMOvTw2f$5SCQ#3tq&2YB7UXWvyxv|V zUaB*^a@~nQWRu7^G-C|Mn&5g<_;Zb7IbvfB#u`2)yrcA4+b*V6#uD`^LzDWz4IZP=t;m=3U1* z<(Kk8p{yIiqGT9_PI|d)`yv8*QLw1@sB2z^h>G%mx$9+B^1dLtMFD;-siB? zY1|ibLum`Ql{5m5dcMI8#_>JZ?TT?oRK`Jckr2wBICNFUVO$Goi8})R_={jG3F5=f zc*ZCjap=-=eVpz+_@Q*{`SMYeE5QiK#F#NT(M`==R!6}lV6_@MtaYy<#(C1qW&~u` z*}G2{od~--&pJeAr$KIt0Hd8c%hOtd zH0Qga3LgR=My+=zP=ynm10PdB%C-JYcgvQ+TT$zFe-y zGO)W&%mJ%mAHMh?HEl0i%^7GU64d(80e&p2Uvb~sRTD%S3#Ryuvl%HBoHW4%lt7#4 z)&~m@C3NA`D`%A!Cf>w39!tC!Pi7krH|gW_Umj;Mu$wWtd3n06p+i}=0$#QnMyVjlyJnJO0^=;%n5cp`mo37_S^Lc zlz|wvPuz{ZGC8Gp=AJ>&jg7*MxH&;ZPs9xxCU#|C*Nw|~0+UWRSzOEZ(XUt|$@2!gQ@TETJlW%w|$I$;Xjr9Zb z?%9Qn|4Sq~{yQn*NXNdKlcMWBRWpybT7mydg50f);SiZZd^NI)zeJG3YD>bb%8_m9;$K5($&|Ru#kO z2u@9NS(tf9y5RP+;ZtCGKDYeZIV{sita-Oyd0Vi?6hOUVA@bQgZcYsuZA&q4P6rut zU`gH}Qr-HnjKQFpg6X&vd01bmTIyTR6f6OMm|L#z&qzi>e$-8((BX$e%!j>w;!F<$ zZomE2fEe4#-7%4ywRA=2Z&33XNs6PIk69g-ft#YD*9+#i3+1t5hXtV@?hz5(08~B&@%N=c@utSwoZj5bUKwPKag{(Q5BN`aVHqX z3Mbium^mE0W1E?%rBJPoBz#=e~zAEnAi^mT`xi*!vhwMJBIf#uYT|mD; zp`NSRyheU9mU7`vLv(j`GVR)79;;UC?}F$ajo`D(Nh_zZfmFD3yv zk!Z|5KdjZ5(V`q8sL@^qqF(5tkL(`GbtNL^p*ocZjBS3_7pu?4)@mzy;YTZ;_9BCWoxD#vUl~1^=oVK}g)vSacv-FwJGVcJOKY6omvdA*z9$ zFbx?F5H!6)ZdL9H7;#5C_ETeeR%h?(*xlwGhFI2bc zw#Fa~y*2;|n!icruKWLTCLFTMNWy0fq4fM_#1A-h2O2Dg%&TZe11*=(4Q$66E~CU# z&=TvopjcN^5r}ICrC4gJ)z$*TToi7NSX};hjuL;XvFFwVqAjnn2kk`aDZ;S}=0y8h zejV^#4z?TW4rj2)9I3)lo3$R6wM2uJ`>Y$h9+I&1dr~eYPX)XG@6(^`GVS4}b0N(V z?f!_x3fCrgY#Vu--L7+LPtmS`j-`&*D0kd%S=?Qnb3(n+m>>-=iv2~C{HAyLN9CPR z?{f`$MK4m}QrtnLr-;-7md}B>PgxP7qvJ|7ljDVj*KuGFuEq z(5Wl#O)Y~P;Y97uh@>2yzA zBTFcguIuHPf;@!D^xd|kP@NXE43vaLNAkdt90aIVpW%;yT^F7(W4xe;x$gU3vbQqE z<+JwSa$3*99W|1WS<^@mfpz$WY&7xpOdbk$!E-xAFTF8#Eo8C=y1!;tyoGkbw1c`u z>;ra&U;Ee4uvB*Pn{*B2o>TmQdZZU0k-2nM23TN#x|`7PmRTQ8272fp6K5T$xo+4} zkp7+NWy#pp;{79MXI&{j8VjqV@xgl4lFna#@yvMPGAs0PFkB!IvY?oofSJutpF{oT zl%`vu!s8Gy{m3h;Mh%)@Hr!cA7t=`KT_*)a7mkNSK~I4>a@BIgN*PrtrQrybs08a) zej_LKYZNE)y`6;kB`Jm{@aTZ8nZHN3h4EZ4j*k;6mYedo9*3MzWpmFV*6_9e8Jo=|Z5xEYC2Dd~h zzOIXkFuv<$(!+IN2;31FpwTc1>lV=?$gl|SsT(j_(+%$-3xjG~N%m?)hP4i*2EL%B zz1GGBc|?)B_KptEM4i1x(F6G~+~4{PTlx)SSsp)1Zt*N*E>DrCFM3(r{p^jN=S1F|4%; z7o)FCKp7Ndnr>2=ptp?cA27E~whCmMY!cT1uH!JHK8{che!G>_NiAc-PIw7-d2YK3 zc3WR2-=M{q8`J`G%7Rii#jDt6(URi$Lad*t?4vz4IoPA1LqBgMan7U!yxHf?K&ITV z8|RSK-8U8a8I5`~d zvCOr+zytf_x%5?8g?aU90=iCE*#WvAuRVS0aeobvvCv5H{+EzV`1pC`E85`o@B96_ z&=PCjEDFNfE0h{n%Hg+K4&*LLYtZ(OZ~N-S%i|MzOX-~O7Sv#$y>r~=nbe0km{-oNa z9FNJI3Ezl2tt)2ufvhcqK0Z&{Lj_rnu=%<<-&+zn&E}&(NM0 zfqI-0`LbQO$Kv?D2wC6Fm{+U%+UD6vv4fh+bKPDX$El5=>$0)3C$u83OZUe`gT}&^ zBj8#-LU!xHr#%5?4gptS+@N}|B}c2^Aj76uALfQKQ_`-BID@R^4til9A|w>@4XHZM zoHc%%QbjNWN&8hj3+&G#ddDv4?799A-mz{tr)pT_|i;oU3Yj0r0 z$CZ!OU}BQ=)p_M!gH;;RD>$eV#Mk~q?9sZ-;;mIaKW=;~(WAJlq=Eiac+iEF?b@`| z^BZ{f_JXpHbAUK^-r*Rp1&>r1)xMw*_T$qO$?WQw*`tc1GX+lm)fy0JuWtONCYis! zyTUE_4L{EPOosVc*KeDFD(^9G*x=icTsWh@p-jY$MQo1D5aDORzl|B8m43c!Ox{9=DgDF4OC9J@OslHRD z5dA2&KNeGZuEA_rGXRl&PzT0s8yUi zR!p8f>~MuV6rQ1($CBlqHy@L`46hmVW)+^75Wv7A(j5ycN>}f#L4bnRCqg`bc1z11)WYZ+Ro8(gm)5 z``L60C!C7hw~~eMVqg@-dc?4UZ776_2~DjrfNCj*iV0k;oJ+kWgg^okPr}I13j+PC z5qqI+ZN*6!3rj;I=AUQk2bh5}%<-4^fJOaMdAWA-aK#1XbwR0!78&kuu%=C&Kr=?m{_YpWyC#PTB{dwT* z?Bm3>VPM%EI1X~{?F7$Zq8*Nzl(?gO`0IDfl%M2QWon>J+n$CglE70gQ79zF=+k3Z8z&F+i7Es%99Ekku#OGAKE6-J}F|D z*{1Q#@G{zc`~y1WBsNvzSEv%;ST0Byf5MA#a{> ztWJDQtZ>kgzgElo_#22;?x3S!T`}zi#6SG@&etuu-vb9jM(eyt^YCvyH2c)0n-*>m zcw{Q=#KD2&cAck6#&`6%#pFA9MpvWI6pXYA2XH~RY$szMzhLamk%EaWR z5r1>N*J4+Pk!i$2^uZ09P|?E)Jbt4hI66R&a3wpSuhC3IZ$Z1odM;}N6UsAz`X$ec zl;s-nwX=eEVl2uHG7QrR?Tag5h0MA4%RN&wM$PjT?)B0T8Mh>(CN}1l;ti~ZFaM35 zD8q&~{f*=e%%%_g!D^Io$B*hkE7hc1WMj{ZjD^Q{Vp2vo;f;LL+8eZEa%L~~4TRIe z8=@v%C+_MS114jqU+%#plHRA+`8Z~E2PJx z43b(8b?}rONIS?n@gv)QLNB0s7=gKu$|?#OGIR%H=3yv5(SxeLrT=>vH`B&DnT>^? z>uMc+tRl6}D=!C$9=JHv}@kTY7WhJ0l}I-8-;(w*OhM-}DvU$KG@l z4}+D+0y8bRcIUWNan{CRU3it_kIyopcOUxWwe<7^qrE!bvQ*!@;$#2}oXkzyET1>6 z`nXTP$$zIfSmb7ypdkPHr3d)+>u1m3|LY!e1tWViJxeq9|4C*WQU`O@TuS0TF-tEr zsaTDt-ms^wZ|AU&qMA@`CPEz>28k6ZFfp4n6`qXTEd3oq)CdPI1S-k@iyFc&mFbT> zo!Dw@kmV{;Je)H`EPp-lA58gG*=L@Yt~Nlt2o3AU)rri@mdga&$@dN0$@T~5jOT3= zX{afT4|l}pV}<0pSWogk%l*3sx%NbV1%)^1&`sB)&QFI#gi9?^$S1a##SzcHQzM*@MvsJQNkyFm|R{miGE>rc%dj2zXnjmED??X z571Z__tGSpu{W!Z&6n4%5FCb@Q>7L-F}%~vP7$NM_asL#yyw>@8d76u6%HSgr;6*7 zC~B4rKhoCTJBo2@OD@Zu`m463%-TJSYw_%&QHSHx8%}@cT>RP0o5FJrJ6L5}$*kN` z-i(aMDG{)z>&cc-Vfb-L?Ybz$PF0*ath;J{eP!K}U-k72r+$w~_}j-cf(IkfrDP8I z<}d$y=P++!2gNdG_4*2S`T9}JP{5v6Tq<%+_}hz8)1tK&GQ?xJ5;aP3h(B26DZ*-F z2zh~EVtWA!C?G0y=--^HKAkYH5Z{6IH;#`Io%~X5x3^C3c^DX>-sJQ=Egjy*Ul*d1 zBT9PA{N?K1ZW13E8M@6e#)?4{r27z#3iW+CMjEzmp~}0*(zHKst=_7en9vMq;zC_h zObf#b2-(HN2v>@k5Hd}6jLk2@RjCXGnoif-h@eqriPgegebpuRdclYjU2Y0M3dW+z z5}LmrwM}`nzFe^kqp+nZ7esybt7zsclz-*d^HvM1KfuTR&95x{rgxKYUSwhvZGb=J zuPcBFrckc?gHO4ME^<+-Yr=|vtiw@4iPo~$N9>*t@9G3)kJ(@6+Q@>3rHf(g5{}!( z{%P0q>Q|H{*2#hs_Qz`s?^U{^eg;zkM&x_dFjJo zJHcG*)}lU(o#bM(ZSAb&EC<%_k8rU}@6 zx`_(ez6)@*v+-4Y_mb&(sISsUqmr~qh@-!}i;Yb!kXH7!ss|aU{C)pzk|~{R%6^I3 zS9J8UC;>!&UFEWFOAdXQ<=hkPQ_aPc#E`27wI>I7YLzD?|8 zlQ9w`p zUlyI~wUE*l@#x$%wMS&hc=UQ_NmyCvBC*M(l-edMV9pbsSs;~kkN(Okdt79pNYD`E zrL(;iEvWzj`klgyhx!Y2{HZgy|e-78dc#>ydu zkcqR0mq?eSkz`0Z(!Mg0)|C39k0dw%+#OclMum5yuBF`Udb2&=^*|XM(!R8`)bGl! zVtha31+@?mi^4~$JC2_2g$eym(q(mj^v^!AHm-$gXgpBCOF*aAVD}xx7i(Ib=ZDq# z27^Y+Sy^IWfAKsv@6|lEGFoQ&#@PwId9la$53{>(BA4Y&q;1VgrGF~~t9R)=xy|=kox#B=qQGD7dWi*rmQ}oYO<r}bAM~?N`y+pm)zrJKnF`}d4KvCT zP-k>8R0%|`#RjT>c7XWv;_Q_1G#f3+h0<(4-Q!2$so!h=F( zUs*k#l77m>I$u9uUbLyGwyfS+oL|-eG}P;aK3Y&iBNlb&vQ}BohSu8KwY;}1hm^cC z3uLvGNjpwTx*jeIM6+(%ogiE=c>d{AB6%=m-0KBD&iSI&5(PO+GpyjgYZnDt5-I%p zgwrny#52<^0(p5fu~tpvvEz1LAn#o-da#alCY-mo8r`C>@9VXAC(tkS)<>nYk=izN z^aE*;si$(>6~H4rse3lFc)x1g29 z(5wuU&*~crNIq*xQ(Q4@{4107?#AI_DnsdQ5q+k)xA@*bwBFIdELjS!NZ4Ir_mj2DKy)Rj$El< zd&N9@MCo%oO5l^M-1f8OX$hty@+PoS?v?ON{hoFRlp>zz=^ULRpYb29Mr@~v9_2pw z7ZVKcL^K4Kv_AuKmtcYzjf|+xb-?P8QQx?4oWLV_SpCi74W?(p89|zWZj4QOBb15n zjeBYxdI}^Bv<8)MPmWDlVBu3=$XkLY^tD0|yT2Zn9Ya`{?;EuImr=L}h7~Y|wyjoC@j&8*E+{l^nc`;ASw&yHqk#Z^?$pIp&fH(Y?gQT{A?X@~+lB$LZ zFW*~Tx%wJ&1(ErJQAUY1Wv~(9B23rXY#bqoysh$#=XqX|9;}BKejiHHU#CPHF7T8xVeb)IJH`D(D+kOOXY}dC!ZpB@r(~+b z0BV!N`VDo)*A_{TGe@jm}$(mO~2O z>1e0`lMahJmdrDB=aSMquU4VB2c`7cit3%Z@wH+68GEo`50zd8>@u%C7IGMK&+u+)z4dox!j&r6f@&R_*j!xGdob;sM z=M}yrrT#9ybtha7#4Fd1!U~&5dC_OEiuj;+$#v-BrJm<)M)6iFhz;DlI|T&P1T_}Z z_VT|69dM@>O5@0PmbB&GqXAIf!-Z>*+pkh*pHZ89Fs~5&LVqPMJpC2gg*GyJ&;cS_8J7E-h%g6SYM3Hj8+%d=b9xVf&xdaZ>^vJq2uQmNPR&Zk#!baqJ(L`EFq6 zG+FtW5a!7B?-??Zbs6~@@r&mTEinJICY^06=)^-}2LvVsn&D5W$ZqVWm;L4mUB>U< z#h?4*f#-f?itzvw_0FL@3*&^=Rpzf$beM_-R}R5%!leY~ecblX0n~eW%@&QkAkHiy z%6+jZRl$XS*#MKl6M39_@M;PkeIUZk7~^*<`Gmq%yE5IWc8ul>kR$4P{8E7mX`!tW z(YqBA3~G4cB9rsOJCBC0XlIvyckAp2X>{>lBEp{PLVGI-=IL3|>De!O!HjTX`8q@*oQ$tmw&8DCiqlAiNciQeW$#zpZ@Y@;48e;VM=E}d8N8^M@W%sD5h zAnGvT$4wm*-X?#QL@*~R-pM@vAP~lkO1wlu^w?1CA)-yurwn3E9KE13NiwF8O#6ym z0ErtCaVMe2EnF<1#^cg4FXYowz|-b__`Kzc4esMI?ki)#M_CPZGls;C!920;`&o|A zo35mvfP!A-UA(;Zgv_NcO29>vVY&023&Q=iT2(Z6>BVMM42c$>4ecL<*h1dZo1B9ztxNv?v3bA=4x9nJi?-*|vEEIyp&q=;uBUQAdf|S5 zvBe5btLL`pC;VzC&Ua?A9|zxqOv5MQ{hC-ZXrumNkP@2_&UJfGLwkV8z18@ULN8Sz zloq^OvPb6F(#B*^lC?=n2&<%EW^w+MK+3;TLU{MTE%w;M)j)*wB`6mpj^$a*_~zd9 zK*PPT2btqqDUX0asLLd+m+29%g9$XR**EzB{8p^ zPOzJ=9{VgXv=W)uXr=>p|7?;;rJfuTUN<8lo&)V!@tFYyneeH>Kwbdl$Co%DCqH;} zL5PzpDlX><1XlFko$`ZM{0ziE&k5hpZ}YfKVJ(pPnt@QR6*}Sarhk=P0X2i>O@o&` z099Nu^WpZLogU_WrN_V{jC&5}tpig6$z=nff|b$pT|tz=08xU;Z2_Tjz{$n#mbp5} z#m*ZJ1m0&ekYkK8_^rdpeE^>;_;CWsp#v`t0XakQX}e(MUH7d$9p-h1EL6jtL;X@R zMpC*if7j)0a4zwX!3;Qu&J%b(lm%HTt#8$d?eu1e-m^4=)|Fg%<*eA9F;g;Rt}v%4 zqhzU&$QtM=ms7S-N;a3{;UAIlJ6FQBb5mjiS(4^+rjmOCUeeFw1XF4SUBc!2Vft=4 zW0mC$dhZ*RVZ1~alJPlL;IVU80Q}D*`IZorUO<-u`JPDf-Wlb1fRuEBD?(*Jmt3>z zI2kHRALm|8*;yegGX78!Xtd2LXWY@#fOLXrt;}#z^cn=Ilz60A`X#SghT{YG0t5ZS z0`dU`T(Fg=^#tB>hTM7}?LE;{9NI3Z|4RaChd4f*ht#^^bV`HT97ky@e~BNA?+_WN z76*L+lme|h(J%c2-Q|UA+X3CY0lh{5dg18x#wFf1lgSJWn#8lA=p*j+VN;Wz%)F>3Oi3IY-;KSw@88eDzXRBfi|b8mdj;MneXV!Wqw7l3uNn^(u6!| zto!6uKQoKU@a$4<_ z>K3&fzckt4+p*XfoHv+{=OXKb67;ODJGNWtFlA*4=#=7~TUvGX#uP^HiQnNEs9N2G zjTNJ5v!+_OwRQA^8C5UpiuhuX0qetDGoG#IjCWksyl|AHdg@at)hv0lT$3s$lc#%8 zrEZ%5&;X1&17yv83OZqom|H)qy(>dK&FSaJwYv$=?uxW2_0(ccpMsK&IqQzdH5sa# zeA9f-vHS$t{Kq!i6LG}|C1C|akQjC|ChD$fFb$}Mbe_`?$(n(5LB=&`0gXaq~ry`ny9BKoLvP;Ih# zSVG5e(LS+W!hHmI6X04virLreNcM@?47)C1{~mvzrn6pk@0Y4_;6e97(H{A!LBE!*wq9q!c)o!a0iFJZ@BkqQ6(b6jJ<(9{STz`>(-^n5V;2o7ZgPbC* zXZZ$XozliGq4^Vqb|5p<=+Pg)}p7sEIC#5HDd%H_e$16V(=1i@-Qz zWI78}i;#aQSz9H>p@7%?@=FOQKv&AsAH-&=QMIpEXs0qP#DMACHSMef=cF2k(G7hvCFQoo}ez`-OAh&kYr6@%q6x4tS}vX zlN*}Hfgf}ULqI&i>d=c+~Xr}l(Z}J=bzjD=1>z<3>V1aS-h`1wp$dF2(3`!SA=L4^fFp!r|A_^dqlj}vxq$q|ahps6L`{=f9 zi`>`f`R+3P|?akZVF`F`mO1)`R(9G?qz{beV}!R;oC$$6)< zXM)pl?_VUYK5~ww$5Ck7_?pN@pip)JBVJl3#V38~I8r=XOXp`n}0NCq~ zpJzZ@D~@xUY>Q75>@T}IoR{u`ZURTq@mqqJl!K$!HoM%o_D~SF zHjv-k3jVVDiUN43_vZ25B4Dvl?pmzgD#yHJ12Zsh0*Jav>2%>wWI-Peh`PUhyD0<7 zf6HUusgH zLd>5^qccJOw37Y_jM9O=Dg*VXK)#ej6Ed+`J!WdB!!#bZ9M(Jy-`X+qic)FjN&ZeHgN2 z`Xm-K;oLEI@T7EaPv1(IM350f;Hl)YPZ4bIjGvOt;O27h+KIIPotC0JI(yS!_fLzn zRzN9g#jyXW7ctu?Dv?`qOk|yU+s@f4hzdIJKb;Z$ThZY5z_)*Pih={v*<9#X+@|qH zPy0_-aFQz38f$TQBPw)?)pff?zzS8L;v*`Z3M0Ap$uT`)cRkSVB4EDA*Een|BV4zv zxZl03xHp5W0*+8d`t6aGQ=KT`PB1^@8gi5G@&nyhSD^2?J6#+YyI_U!LMl4im3m}= zQ}LdJ_FIy!D)4VGWp%#fiwcmfj(O$cni9M6jEKJ!)Smp_6_w@{lz9RjoYKk{6(V9Z zP|y3E+S01d9nce-u*$`i3rkYk*@Q+Z6(%vUbYchlLy|?5*`I;Oaq_uROovWAmFJlq9wrwSF`SY{j?OHyZEpsTR;cmq;2jYXX$&f& zG)e6q&0>(L%w`3(Y1PE1wA_^odR-HSv#AVu3@v*S>7VAJ=rR8>(p zvGF4_)a2kr8h>a#EIp(FckY{!xs1xJk51`p`9|w@I9QAgsYn5?4eH?SABrV?MM_5R z_acnAvSd<3a?%uKhuMmzR8H0?{6>%Mgbx3_3E(|FT*;|<_PUw_Sxzl6YS&CKV{eN| zSF8^nc7|@Vz}DFMD$qR`7XC$`w=GH6F9>Io*cK{!M=CvPu+=My_|`hot&ln{leE!h zVy+uug~OdK+Dw$5hVPIg<0CjE244a#Umr)uUApdvtJ3zuB02Sv{YL{6i9%^@%wyj+?z!nhM;I2)y7@E*Fe#c{4O$ zjBfeY!qB{6ko?}?U|p*Q(c=O~)2HN=9iXB4u?6=8sP4BG^XgtJpx9^2q)Kx`=}r_9 zp(^v~%}#@PP0OrNypN!0sk@Y{Oj1^bQP<_FvpmramgY|5(rSn_dX(SNkrst%NZBn7 zev}fFFpy)W`oN{uYq4*JohK@jVF~5eWxi1#@O}7|tzEpQGAqItW6LNoFOFCJYQW8N zX<_V_>=7N;a&2GqCfr`L4xXSok!Nj)s%pAir+6V?9k{z?0sPX&d`lR;uz%D`ugXNB zE9rw+#0pU{&)cG~L@*xVueZju0qmX}rZu}W%8UOrI%EFY4lSwlPY33DR+iOc>s)7? z*wq#`^RM4Z6l^-_NJef+mD;5yJj`}D0p|znz|H-l8gh#ezQ5ZTLCNxgWV(Q1FBFHd z45hz7YZ4m3V!BK4o`vUhh@X6BMYB8R&0^^`jRBZS+~uexSvh;FQSDaUJ*UMo&hwNF zV#^1z>9f}KDRhEQMX|{E0$u@W{uk9{sq5SA_D>9=E?V9gE&E8h$mfS(@u6Y(wGb;mo}^E2a7yoZXvbZbci8o?A9Vo-OKod#1fy$P)YXsoSZqlwDUIX%j4I^3%=M3| z^HX;~6?a&y0jPc_idOy(Igu9zxk5&{^9Hd5^M?<#2+Lpt-Nb5ncGx*FOJK1C=lqK5 z%vvUJ26$>a!FVWgJqWQO-i%sfnOvd!eC)UE zXu%T#k~e(CURBh}b_@E{jjS6q^(cN!ktDB;Rhq zQ3uhLX}XI{4xpMLbXDxVgq`=rlY12@gKf*G$a}DMZC%+o~_Hzh0Rv#~tfNj@H*)-bH&^l&q3UD!rKGxv4fn7r#ztM8}$ zh1J2l*3B-j%HRMEm)9c2k&f(57ViD=bF05R>C*$(@qcmHRp(~T5_5MX4Hhz>&9rf$ zodz?S(!uT)47St3tFFSP7In1wG!v5sWb1TJ`iR}!6X`BJVdLv!e?(AUbuPQ)(9vnDEpe>VbuJd1m7ohTYZHvG)D7f*7?E9ym%*F)Zx*hvYe}#bsv_W zV3*pK2WBI@uT7p=;6uAyu3ii5uQJ(n<&fTNQGv@iDM+s{T_03)FPPiXzGU1yk!b${ z;cjJz?W-W&k!^~g(A|+~?@6@|w-i9!cfR%sZi2}Kbc*ZIy~`AQgp`3M+;~;&Ix}!z zf4*>SUNe)&`<*acU>mv;joy@i&aINOiW~`}U|Wvl$WH@oWa2f|rG<+t1jK?P@OU4z zOpiI-t5bTo(9#n>ygG_K^BJfLJ^x>&qGn*U|0>eCvc_&?bD+rj9!@^*P)c0z8+sC zG|vpu5_2p}{WF^)M_OLWG`TqSE0}^Q+egCm9{JudgV(gVAA~!55wB;(aoTg*F~@Ov z=idqbH`pz)7gnhM7`x1#6N>5nYH%YXH-29`q)r%dz!tUX|Yl8}`lwT#AgRJ1h1*Vk?e z*mlwESBTS~N@|2Iu-)-D{L$oaH=7Wfagh|!Noet zmG)`FbIm`~5a(Y3)yJ($mhiC{Fs@`I7TLI&st*XVM6F2PH2_4sT$~h zDE}~T6wO(j3;lxBS+a-ikpsdFr7to>{6MjK!xxgPd*hG2a+os^%gAFXJ4k&^j#;_w zh+(78J3tCS5&8$PN}+&JQO7mB&)ANrZhI<;X%%`S+n?QV6CE+`tUOq8qYHR(_VPnO zb*h2OjES`i_S*g^i`m(2<%AE5-r0K*%8?Ci*yqdS{$%A%iIjD^L?wIw&h0RSP|5wv z>Ag+q_JYGw85Hd|2ATQrpb`wW_1QJfz?TRX=CM>#EZt?fY(3e0EIsmA5mUFpgd5w0 zGG3)lYbAmEvPAf>ulP+~UiKUl4!B#wx+T_&4~99s30pxV3}>rZM>EL;m!%J1x7oh` zSG>+e>ESd}+FfSRWmve+zgp9lasY*8xPuUrhht!4y$-i4HW%A`yG!f?o6Y!_+|T-Q z1>%qlS{T~zz~=hd-UN=1sXO4_m3F-@)G&*wO(FiMb}@`DNc1fo#GpSb1h_abfiOp# zwOeGftndn}e{41)p3O$ED+EtQ!v|CQz!j0>0kvREZ7Vf$rQSyP>;ojwTUVgg@Kf1| zO?cgXYXwnV#Pp%b@X5&wGjpYmZQB<+9F?;L)7(m!9nyquE7cx1+eQ=~3RZ3(Y8+PH z;;)AqRjhsx*)N7zQ?=%qcmBV_ex7yV53%OvG5W`46unx*2U`9qDP=6Z=ydWw7Xhg< zNO_rsF+im|eIZOj?CK-K$pC`TPXI9u(8Z%k@2|8a?A6zpdHrdo;hy|po8L3is-MCJ zp19?pBKzVpf+9o{=Br|`4&&tskj-feEn1>(k}{IIp*b?cvU>->nFL}FVP(|zEbifQl zjf;V>vhQwS}}Nh_siIKWj(ojZEyF&Nkp<{$7=z?tOcfZvcl|CX&QV4>PE);2L>;)Gj$w-< zN?!N}ZGGa}-^(=_8271teCb{A1UyW^)JG@P$TxopIkR6n$k{h}^hrH$JI)g3l?3*8 zylkDqd2+@j3f9aemQVxHMeFWksHM_vA}+v$sm)C2;&spMdxiXwto1|G^ds>HGY`@A zw|zmETeMs8a!=pk9g4URt(>vUrPAlT1st~@@(n$n7 zLV5sjk7Mrb3)wf!f2~g<10rjCL4klEpn!nr|6lb(bC(e?>#hyt~Za5H8N|uu_<=>2y z`W*N+F%@U;PsU;T@cAl*da63$7-8N<-PE|uaJ*c%Q+>XCCzb-4*t10vr_B&VQ{kYo zdrj)c4=geBj?J^@4mVRXa;G$4^mYcwx_3_JPwqk3(ov|X*eUjzLi4KD^;@#dt4SZg z_)m6x^gcz2l#|9$?JV3}WE5{;uScvfUqwH_u39KlH;(%~dMwpzz-jU&fhAm|m}7&0 zUMxv>wQJP^LdfDWn5-87Drct7Q&bly{OtY|k0d;Jxj+qrneogj z|I3?KxPZ9F!3W!A$iwiM$@sO1kt|0xTn<%0?ez;o6Mla#_8#J18MXG{ggi5)C5WsKvfp+Mg2c^3*sG_9as zmFqy0MJLnX^s%+M_LqRp5SER7TeSf^*39*+_Y`#0E2(QfNQJFrx6%W?w;)$+d)$YE zeUavcWu}bIiOO1TbV>QhH=|*WGC(2$2H|iR%jO!uz2AQtB3~M}RQV9aIa>O5R z-7@9f9XEP~fkQWLj0XptqQA~5YGh{5s0PfSq!C<*!gm-9@OK863`jT$I10YVL?Nvh zqL}_nVtN_8Y)lvdA%X0|%99G+jc%DP%DTUAcD1pX$n_XUQ^-)iC;(zRYyS6P#{%ai ze@<|Qh)O`3M2KriBfp8>PIRDnAMd-B#t2Z?(8Xnf##V^N7UB<;(mJukbK;BWIljn+ zz8Dj{C=+mC5-sBo)wAG7(V?awN+U$e9k)u1kIqT$rON5g3qinhvh!W+_Z#Ol!t0h- zij1G;Jm_XU{%TO6E;oozoE1Lt=Q+dUKbuL<@xWPn3u;X9YT(aV_Gz3HHXG>E#5QTr z&1GCL%R~{<%5womXP2f^N?jQEkXhJPhY@#nSwl83%ny32%e7?SaR>SF<4YbLPt6ajy;NkEz(80D_JMM)wm$OugbI7bGWzsF_!PN(2JPH2;q9aU z^VhvY@Yyh(m(fcI=&|#MHA$ouznYi<`md|OYdY(S)Q_>q;m24c@!zcmicbHReoRK+ z+St)f-_Tgl*2c-$&FMeYTh&Sb%UU$@Ef}BdOe04%q}d#i9O;t3Pg2gnYAq%vW?jYF z{Yqa2YSW0`z=iQoCBrQe!3U@(@~-dKPLwHmF%7t4)Ed}y)?4mQj^pvA*T?4(l^^5v z$nTK=cwALyEkTtLXKKoekOqhGajMF^{Ib205KUNyw{iGJk`RZjdu^smH{xhH8^buCJChoST-v$?Lk7CBDic*B9W07OpECL@tM+I@i!Kw)5Gt zu&l}z91eC?;#&-tiy+$`m;6sPeaPyBmQ+47xHJwEA{g~{oBYkG&FSHiop<=EPc!{bT- zLJyz&_##eLLbW#lvL-CBe{jvbu39vL@4I5kpgUXGfn7lplzWeQkV!^)JE}BP%E!HB zIP?1cw4k`mQhH-WoDLnt1&>n1{M&!3DZ^$#PlNY=)%BAJZO>5#pnMLC1+KbI##xhR zs+q=>e4`x4ogw2rL5b|~teQ%p{v~>M3A-yC5xY5mhc(U~a9@|*>t|nwDi{he|2r~E z`)r;{|2L!L_thc&)rzk9Z>{UI+Fh$!pLdfp=xpIfg#S8c-)#vNW7&a#D1!bQVc!4z zgZFJ&~Hms@4kTg)*kQ7Q3LgE0nQ$PK1|!=r zYJAl7wTc$TNrnWy@;Gc(g!gYFc4ZxNO2loAQ&po->&U7+K;dq>tzIJd||Md}@qELPE>C z1xn!s(Uqj2aNJk4IYh-BH*KmgMO~53H)bV433X&8F@9!=O5(`vMVl*H{FX#*_Yj;! zS8ymKAyWWBrdYl{fbK{KtSc~UL0(>rz$=k5f5C{Zd%fr56Omb)*EtO;_$KkLklPE| z>5o+-vCF?L=1eG&L9Tw)*P&S66e3|+-V}qCD^k2b!4aslqIf1H!8&`Po|Gj$#)0QU z`!`nNgiP-Ygwndm1%3WPI7v%tj0A+4CYV=CV$3*6OJ)p})~7gA_sE~at2k0uT6x7y zkGE%esP>_k$cM+fFBO~Hjy!ISMROmJE5WttRhoI@aQBPbjx%@n z7(ij0|3_+PV9^1A1fk@|7^-Eu23|^5P#$ z1-qb<_~NhCRXod0@)8_tP4W^Q>mh$*BiSL#JO3h>{&x`jS1jDu>ET=M$+!GNHtC;K zZI9gjUyIwy%v`Zj&xN_4EqME-PWSQQPk^*!`rMr<;*0ca#0o-`0l&?aR?-t_lZq7QS%7<793!v6x_*)HfVXXVhe07D35ARn zsi+54p(lF)gz?8eI)wj@e;`KyFWzFLVx0Q_@Uvn^(E_)KLc0&=C3QelP81n~67m;4 z(j;MDdTqUmHKTfUxTTVb%O~oSq6${#nC}^A8J1~c9>VPR-4K|{2HaW+NPZ)SA0n4A zhleQa{thk}B_@qDkSIaSDu491N+B0VSr~#%C6_kZ5@H}x+$?}~R!ve=;I}sM7^LPu zmQYeq5FX0{3*uZMKK{MvZU9a4a5eyflBp&(M%2naM=Nl zWqrrOG)hiVMV+CgBd@NhqAa5U0A%0T8Z99APtJuS1mfvvmi z(bL=m9-^wI6?#( zbja4EDPq)ev7o~;8f2iS%C?9XkYWW+Ge{q+BuSyMr+?|iDP4*BfM0YuCllI^j`S*C zX1GA+`zbBp@U<77Z5aMaliN{ z`Pr>u;lmwxz4Y|kA0;V?naEF1jDIgOZbDnrm#(H(Sr@qyyIc;%tO6llO_MDX^O5GM zmfr&{IcHz{3RmN#T9>tn5#@1(PB06z8hZna9~^>b-=DI)_UU)$@{W@A%y~wM9-_Pa zb_fa){kCXPpjyZH7#xaO=vs=}6&xXlWQIUdjo|v#%BeO}Q?CsNjhyNQjKNFNc?M@L zo7%2l9~#nP#?f|OE5y;J*grahxbw0KwGI^hg5w`>N(y+u*X(_=qe)@Z{65246f0#p z3CBA&3=wK#7on}ZcHTBw`mVDI^148RY2`ZPaoV|p?q|cS0|e9(+!v*-9VUyt{u;<( zd5x`7Vpd<$vpR|Zo^lBEu`K)|bF~ov)FTA8cOUQ_Y_O7ACgIQ%i@!!uOM^*!?BGd_ z&RO*f?E^UGAr7W?`VtyHDcv3Gy9mDKQS}3AO>)0j__B~0^YF*TXMQ-W(DQCPY*PUr zO@S2c)5^zqrV8yHcx9*Lx!0d4zUWq)8n)9?SLO2Hl#kz+w}r+abD7rSEBF{13Olnw ziA<*tHQYJFy@*C0o3*ge2d)?Fnvnhz$EHXv_PzRfzq}QQ)9{t0Q>e}(1N(qlq=k6W zFkzWr1M-{A;u|+CPV_{ThY}RMSO{_IRp?IgO5LQRYY7iU4`iGb+~bbQj=hw5e4dw= zRlrd+-x7YaBlQ@AuOfMQRkJJT4+y-v7yIuv1~S0s2{Ch)N5l#9*iV6^fU$4iw3&~Kaw zTgLCIIcl*mGmO2v+AaX<%+D0cyJ-{jl2sXv3B?)2(+#T{`8rZOu_uTPM2O2)7W1j) z+WssW{mJh{^%tEd^L!Ku)CfYdf+uw8X{P-N*?RkEz+}}5!y`x4KBRmIc1u*U)$$AG zv1!0W%9m0LQpU`+9L{6v)3Z*KbFp8m>@MDC>{m4gZNNB7x#$v~G)N!Js#}Ch#9kGu z#o?V{RDw@G7t7N~I4+B#J*$8=Eat<|(#L0vL+D0p(N?$D%@&O7&ygsbPjhYy0y7I(I7>A_S8zh1*JPkV+ml-W{yeJ8hLJX}t1}G~ zg`bNnEy8vkt4LWSrFfVfKHQ;EQKy?U4@`$$r$N^!0CNZ%Q}D05NGjk_&j`~>Y?frH zJvHk%P{jpCKTDF#Z6R-rL)YL!87*jSSjcx5dRM%PQn&frQwlX6=DieeX zq`XzBUBTo;c$+)8TbhxCXY-G#G&{BoGbee`SC5D7qSURn$Kh0~Fc%3~5*5Cbu~<7m z^-o20D~TyTEtd!H$X-4&b21k&aYB7LcdO{IFAu|Ed*IRXo^JcN&1y%NwiOxSHEdq5 znpN|*nYjo^yLfD6pKF4?2ochcPF?G96YzUx{Z?yrDXe&W-lqs&+mGyC*APXLW2X9i zO0f@%k)GE)u6$z4r%Dlo=qmJ=OvNB5X1*w>k)W{9oYiEjbk<^q=}L$pJbmRe!z8I# zrCekR?jo;CNYUTtsqJfD;{DDP`0B_n>ICo0bEOHmsN$P!Vq}H}E0!Gu6{ITycAit! zjLOk6yRyQUq0{Zsg7FHz%@Gsa9uZ#^yR8jk7%4knQDNA<#T?%GqZ()RRquZK10f9T<)Da$2J_G2aZ+_@$mywGQ+4FS zdjmLh#D|i_PKhP26j>L`XlsZDH54il9>|4Taf@^CtLTZz4UCD&jnIixMMh|ueg@IX ze-fuml1VEIjNmJKG49NQ3>$tvlEl73NUTBKCkjX&#Y8)Q?+ zAeSE82P(1c>xC}<8lPQ@?+C}3(R)F>yO6dg-8e~V# zw~isx|2~O?k-FXsFIgq0WnTMUtu1K_3voi7bAuz@Hz+toqSTf^(I%y38$uQ9Y)e?R zM|~PB(XnvGyDLJI?4$zj2sy7QCe#XrlI_3dPEKG3@d4fltF#$$MV<{49;Gd>e4tU( zY@27zN0ZPkbj*^5Nz9f$=+1H5?1?t~+f%i;9%bKTi^7(7X6bv-kCGXNn;G7TJtRE} z?9mlpw<#5%%?F6%Aqs3Z{JaOs$U_A0p{R$68H+VW$OjstAq8X-4$>GGP*5F;p#z&9qE$Fldp<$yfr0vPfHShqT{C`F3%*|!^?bH=3+k-{6OHnb(+@t23nS(YgHAS0O4EMSqR*|Bn0ea1#1#7T)gQ{NrYEDH2L? zO?qlu0DbEM)rF(-BYx3og2dkF2B}jb`3cRCmK(rLA z3x`pr7#IpEDCnvO_En9sV4W;1zGI%hRI!hs%+y!nR;pL`8-UwB9}cf5TMYiz+jkFm z03o6Kfuih_1iUiVAEVw?NOp=u&R>+c33i%Cw3fYF8=P~g?Qhuu4+d8t9c;3@EqQsV zcG^btM80V6gD&#jRZ#Gv;HU2!-i1@}l5m+{1mmcu>kdm)3s@<7iNJA<5b@Wf?K@`O z?879ryefDN>FJGtFlXd_+lAMLcla9ALY`)b^_q?lk5-JAgoN-R8e2x#hRNq-Ysho$G&z2602e3Fc1YpSO*X({>x;4;d$5F|0VE3+~p(bVx{)$ zfHE|{J{8vzE=###qH&y`uHWjWg1#cnS4?(z&Gso=`WjgrtO zO8V+jH5pMljY+^Y0LO9DB-Kf(TG|{cI&|u^aOn^{V*u7`d{s zu-Ae_Fr)>jFMh*b&-z#Z<*OYTo_Q>Tq=OsQ$DCSx$vCJcBbWa#-Qex5;3qXjLFY!*$ zlpcwn>3*1=C74#XfD&1(ULRVO!hjZPST~O~BDX94{lTb*Zylm+YZSBLp6omDg?F#IG8oEc@+5P3`xj&~l_Z0aoc2{!mlBet3_K=^Jb;ZrQ^0uu$()3yuO z6L;wt=+S?C!H*4 z(FEMdwtG8;mNS?v3wux(jcrbgJN;7>z^dJ|HoKhzFYkoUZr(8ce8aW6R@KbBmLo7= zN;t~*9h+ZU7KR+;>EIF0OP=1~W5nwi4rMKyQ-IS#3NIx$^)2MAAuBY>?U>Uqb}kVB z02qGZJUXXvUKBZUT^zD&;=NB>ciEH6f+Myl1!1+1WFv<@k=R%KsdAah)q*@~;eQlL zwXsY3xX@6Ybinhna0((X_Ckq#yJME`P}fjbxIuX9a-J(j7{I!aX~%(q1}Y%X0B zgk{|&^(6>aml62Ci8ru%0G(i4wvPkx#MV;=LYe@fP!fCB$y6n|MJxxm(%HEdTv?%< z(3NFQGmM?NCys921>zX@SVZoQCk39Np2s>EXQ8gy6Im|mGO8%VJ8(E~?wZFwY# z3z^qOpHmw%T?AY~jFsU6(Hgj*RKL`{9{718^uh;JJ_&PHYvzNR> zmRr&958Nz60W-6d1d&<>r>KD8{6kQgT;9t6LD@M4cNRr^I<{@wwr$&X(n&hD|FLb` zwvCQ$TOE7)*1c6z_s%@bRDBQo)Op!;p4Q%Ht>4FUrYmuy5&v0;#dFq}a=0Os(FQEJ zS)ndIExyV{93Wq+yIo_O>^>!c84m@Z{$+2 z#G7{V?_||~B2p$$z~J%hBCVcsZ6zl+4^JO~{wZrgd~Z~?V}s%di!mP?02((tTn96< zEBqXog?<&7xHky64UK&v@yWaLU>tp+j(w?k6_~j<0KvhZoyz;3R`R5#P4eWfihq+! znN``fY?8^)tni6_7tr+0EBpIKW7v-|>4VIxd_vifWNt8nF|}2-L2t~?Qm1|^u{l*xXuO;ZRo%v1Ca!5%lY zF9F0n2oA=xw~mlzN5YV9KY3rLE)lWHUHNPT_eZ~8JtR+ykP3pE;^<2K!&2j1gw4O1TEMCKlhu?8%jK+FYWXft8>M^M6}K@~0xNj`#= zel;z~5=ZW7PKN-Sb_88LMBw(ooX8&eD2Udunv^~oTeC|v-`~g#W8Jg}W!?%7SYE?~ z;yA6K?Z}H+M8FQC%3CDF?k!%l<7zxHIk9U{W7sfbbatYG1hUf;+o1fv|LOoMB<4AQ ztekp|PL=W{&F`LD~Z<``| z2Gc+LuEpuhh_;%YT!mH3GX=7&Vqk@OGS;~HjK+*NZ};CxPh+8k?VL6WX8ycxsDLLs z*Ws;z_)?u`C9Twfzn>Pj>lgv~PDUa)vQ47x85~`@ox#0`GOh)x^bm#(fxgy&#{!t- zg7}r-5C`D!R_NB^SiILLiYZ-8E$4ko251u5I+F^ZI?~fa-<%@jO%aIm9G8r-!q@Ye z%*OB?y9*Ek#pDP_3J8W54$Dy#MG!q;0H1J=083)r++ZIMV2QyfCXDY3rS3z!5nez} z)SQ*kv5bv1SF{75zZh=$*BwGDsf1TuFzikMn#UAz51X!+^%Y27DNPeI^)BA!1_Crq2N@WCrj^UhYi&wml<86?) z|8 z*lc6*&jWMdh=cXb`^H!ekP-xry#?Km892rBVQ4Ulvb`U0Gl7M7e{{e~ zVipN8rt2j_PpC}Zxsb8_l4!@7jl!iq&4dS#(G33YNl z9r?9Y>0DU3v|<~jyBCrj&Cf(VX5Ns|Za!Qif8Hx$L2b)1zGZ)mtCC^0xC7lu#Bdf= z1cq;&myl?p%0f&jYM5tIZ5=3LBfxAq;6ODk6Kc46dC8$knJCcItDeajVJ@liGpq zvK#kpTRx(&>b7HgwuW23&5|ld;z@r_QQM*$;dDZnaV;C%141%MCb(5L=1s6TtYZTI zd@Xl{yu9lTa5`YcC|CgaWJvoiY1-c+huTtqjg&>O-yrGj@(MS@e`-7V0Zc&Vr0C5h zV|H(u#c(>ytT%I)_<{FLlx26!F!5~)gbGt`X^M~NCgsiTK4MyM8A7?%+%|><(Hhe1 zyZpI%I&a<}^^JC;i^X5@!{9{l45jwZ;||Mh(dh)AVII*r2@kDNY;lrvA?j~w%44zr z;v`XFGUETjGVJ_g%R^21KVeRDQBn90Q1r#hFcnh&V`;*0UYvdQpA73QNORBs zpG0*0#~%KZ|F)C=b4!J?@A%zFwL+0U5Dp%MVFQq7*goL|GhYM8tS&8rl9X4l zE)9Z^fIYupQfg zp5b?rwvVQ|`r|e`qSZB`+d_te>sdSV|g+)2qMWFHvZ3Cp?NCu7rB5ROzvi^Esy zD-Qyr!#5j_gkKioXPELQ?v2!+ejG8k7UVvJSp#`yC7;?FqlOmfpOP9Q{>K0M$aCw|9~9$tPn9+R1L>e zE8Ce9J3;Eww>G(&Q1Z%OnOlZau6fv^}eRqFX>&0)WCL0T~0Bq zG_D_Skh!&R#OPP4H(oZ6TzT1(cL~EbWHrmKX|C2`L)Io#(6_dSO0? z>;&U4eAHV$nyxi@33wai^&2cvHuhbFUXlC43~3J=%v&~UKG7`sG@Ev&^%O7~|GJP} z*L|nHvOlkK0H{6wW=#(6ooC?3puWGEi_#C@XT+4=GsiR*ni9vDw!l2pBvt?zSKgSw zebjX3IMQ{2$?AO~QClZnEs!Um;8vYqsSFkKal8yuwC89-<4mFh!=?qRr(yDJuaktzNKlya znf1}Eub=2y5NpaW1~sOn@pA1clD{s$rihD5%6K$@elBXo)fqU|8gb|^ILV>#oo3j6 zGJpMn&<-({)PS%)mWD%EwA7SWmAOH&wgAV}m_^{q3{JJhTY?3%-7$mXZ_dY4Xr>@< zBOb*N@U0MaK53PB)0hPd+xYGLpk1QP5GSIvk{K-&1YZSn&c-aX63Pnr9AU0z^$mq#aPeDk_U7ir=r>@kx7#a-x zXF~MMHHjX(F=4eqJ){Et>{465dPXgMd~Sw`L*UUgnkg)qSt*%asM*0;CR26JD%=!H zgO_xvH!apoJrgT9Yz}Gts`RY=NT8g(E!w^{LWo)$qJpH4a;@MPWKK><|Pc zB?a3L@;Ks z*Th~@n6GkkZ*+ikl*4dq+%9?Gtti*#LnZo=z(!};zpVPY1HmP~IYbGQ!@m}^VMN5^$-3!JABUKt;+XFYz`${Y`7icdS=n3MGMst=o?v7L)@Bl1Z3DJKuOaw{4 z>41mAACT0}71pJPDtP;r`6?v0t@^`B10Kv%?2!|6+%W0I!AN4MZY*A?qOep7&m_GQ zPt%V1!TFu@NWOZ7{{Ajnx`joo$M;mOxr#UfLJS

L1c1{fR ze9r+f;UGfQr)43ixMCdVwFNUpzfBBx=ZZOKx{-stOtc&FGW4PH@>cp20ek%Ys-$-< z+(E>UjL(t04JBT-9+l}aZ_#ng5wPS*)%)*8X_Fk4sl&zO#EM>jY6IfD<9wq5anL+V z7;|%WS?huDXRejEeiA*)5SsdvM(R{kRM8Lq@nltmqYokG<;jsQb?knIDR-Al(v8mK z7IM4fvPhU`V>-u`v`D8`lQR!=51ReKED{`FBO z3#`J4X6Jmg-rz01K?ed*>(q0-!cr9r6;5 zyANvnVCsb&)4md9$#S=w<&nSD!$DM`sMy=ys5>{9Ha2TpJ78TGlAo^IL|iTsq@k%R zOHamV^dgRR6OQ@x7fAZrQC}G&(!55cFtYDC-mwlk`eHeRuTLMxk;YOYjS&OV*!oLt z16&NSO*W?pRMr$!*4_z#H(MIYbH&wWi7PSj%ilNtgJ*p9N?Q}x|rE-q3!gnBL-|%t)0g%dV$(V~yEwwz-N=Bq*O-Z3ADBgUf z7!6wFU#1X!PW^iva1KKrOSx22OJdk1VOizTF7CF$(Hip3Ef2OOEirS>MTO*HA^t`9 zp9DSmg!oOC$^6~~O`gqq_f(7!)W)(zcGyvpSK)h|)B?4JNUJ|{jh`n(?6VaAc)CF_ zesY1U+KVRvGlThp(n4$;LtiOysSe{7XSP<(kmZJs3s&x&DW|kM=i)^SM{bmg+VL5_xa6G%S~Je4m~94PA& zCN_`m748sE@5MFBv_mjN{G5yyR*n4x)G>}VmdY= z6v7F$e>@!eGM%s|9}~(6whu4vL3%LAJDjWjXP)35wtGsc-qbFM>JTp3VdpaeG+oj9Nh`CX0+&kxWtEL648}D?PCF2HtG8 zipi148`u|yL6))7^>_XwH5;I8J=8C?s@<_R6Z?qZ(U-=iu~l471IxiSjG?6A>FCWZ z7!FSNmpep#A=a26_?Q4bix~DJ3Tu8FRcJxsRxW!_f_GX&+K~rf-N$ErMZfIeB`$}( z>44^&wl#@U!u3WhTM%tm740{k5YM`hfq5M@ktiBc@&AJv=w%yEjz1-u8T(hlkwo_t~)? zD`O)Mu`!g2)-aY0UI)?E?b{FfS#@r+9DLnG4zn*ja}NjY{68y!^9BTMryp*!Fe8eQ zP!L!MvnPzovnRb;Lw@Y-BkbeDm-zinc6(4^(sVlSZy> zqUo}w9{*(AFIiP^vV!nD{%qppSCT|DCQMqCE}<5{D4x6(Jv7GK$A=I z6Ijz4uGJc6tMt5HpLLHhb807~3m&B!mHIV`PM_EuGq&mBwdJ~0y~4bmvSNW)ic&jt zS-oVNTL<zuD}ppoAy6rL3mkv;c->xp`{kV=$xbe zm)!@Oh&-s`v$hyM1( z?_DQ*32C}h=L5HI0f*Cyh8)1~`Bv!nUK$G*`h|vZV|RC|aGIXugeTJpL6sZb*#?!= zoP=m1$BMD!@(E{U+?bPr%mvQHuVVrWffU3KWEvw4AUCJq#w|nK3iIyLft-4cP zCrs#wFE+J<`c~flpb81~{Sf_}py*f|8cvh1HI1mQe^kiFc=y>^+2N}&E@Bu5FyDrl z)DjGlJZ(s=4z!u|VnLk-#JUdmk@bUdaVyZM6+4q~Rj7$Q_VirpkPkf&r7gTtQB5l) zDGtapA&(h_ja`xsZrbfcj_)k1oPP71`pW_+gWW+tXVBUcq4;JW)tYJxv4;k7t+G| zbWrb_Z>&M(NNWw${EAW|;++Lbv?i}%xBv?JEmWQ8T>nh5Q5ysu8>@T%UYHXPLbo0l z!72)~wLh>~vQ2_vT0lawzDI{h@Y+awW578P!#;UYyj9J^j}})hF9JHwE``O9PoH&V zYUGHrB{hEVaS(8`s24qpYBN=qwh?lk;^wG)TsR4SY|b4*n-J^aOK!L~j*P9EIQB1TuHzkdeTbB+sQ&GI#NODFZsi8j0wyTa;{3f-!7{343J z;*$VEo^>T3r!zmBK5pQmuN|w}$x*Sb3#VEyy6&&T>NaL>vUI!;gfp&2wj%E{7uaTi zLra6?OEr$Z8u4wgp4xcKoOTzImra_G;I&Hj@3aA=YiG4_TBArea=F#oK%Q#|F2yeB zRvXSk5)ay|xz>TA4g9+>H_GmsZBRp-&3(ZQ-#fu;ztrk$BkK)^6-C%4>o zE6rg0OB(U z1Dh@dW!gK)oNAd<>!`oCXI^ZZ@UzD^VW$A2zd@qCj1osx^C^GzI#=s)6FDcI*s0Wt-BlilZ_Wej$I998Zi+5}y}EZH(-F znbSFvG0}oIQ+}Katxkl0#PF;WQH4s=I4Re~Y<^B6z`Y=^BdG+F&F7^V0F;9f3j1HH zss+pv8GeAoF878Uw$vFVJ}ahI`+_bu`w!V&dv|(5_+3kC6@5Yenez*Z*_d?sM|k2qI;lj2YYcZ9T{zNJK#QqWh<)E--z;c( zS`d&ym!RcoJ1|cO-2_(FX9lg%9qs}zlG{gDvpt1uOX-gpkS&W*#GV<4>NY@|k+A-n zmcGsfGtLY8NO-*MxfTXwFfx(OUD%Ax@JH?(zbBd3`rb<4SAO;Ux4wmp^CoPY??!W0 zb`o{jRns*|5MYZXOAk>5F2F0IX`S7DgSxwNBV;GN(p=s7S>Xux(h#Q>pX8l@2N(T8 zj2w7s5eeCc$Wai4x8VsbOS9|!LcrG16lbp8%7+@&M~qu~nC3WZ;PA|GJ-j*`%_dMbVNEuE7&Zl0bwr43X%I-*f z!SiZY?`8P=6_;>5S_qC#&&vMByyN(F^rr6S=l%J$JiFI+iTld%W!Gyc2oNmIn=)LP zJ^git`_}ay`U(0)@?GLb{nO@${iEC`1NDV7FWsk6e7+jt_YQ9o-zyC_&l$D->)!2#bcqx~ z=IK&5bRrdT8${w+q>9Y%(Zsa;o2eg zg1XresAQ6A^^QACqr|NYPQ%aY7_^DAA^8ns+}yk{f2OdLu|OD#_LYA)D5vP{du|O5 z9v`$nul?LoM708jdr7~R^sX=~h25GKOeEBDY}J$p7OVT-Ih9FP!bs76wGtwzVf^ikdILSgc|<;wKLNv!A(Df6gUpzwpBu-Z39{hcM+PS25~(_X&v*>2`(82v|s@Xj5b=2Yi1lk8%^xk!VJfOO^WZ$ zl6B}zJhQ{mp|3AYJ1s43)!<-6%aA<5AFoywX59Xz&U%JrG36W2v3%H^zAa$NhBfLT z#Y!<~WQu}@75Z#WGi*WYSEj*XISq>@Ze6tDiBg?_u0r(LMBhwxDcn=LVYO=I}E4m&U{ss$&Zj#iY+H&suNLO z^TwK{2S15@ZQ^+W4jHckaWBtrRi>A5HOx}7EgJuP4XM?fq9aP0zngc#Tz$Lp z3517a@U*YIfg-%;_sHc0SQ=SaCJS#H-fHxM*A_X0aHMmWBax--RK+ ze~@k&mTz3rhrR2~?U!oH?0?m%dD|0K!5%dKJ1G~Tc5gAsI!N%+wV311AuL5hVsD?u z1EgR1kSr?9D|ryJ%Gif+s@^ot0JRL4a$A-51ANn+&EEr}VhLp=hSsV+s|G76Lq*lP z+B?K&S(y7=z-v>Two18ad0lBwNLb(!;H#`8lw!FJgqA{idcxuhy2ut8sX3`STay}7 zP@7!nDIV}N_d03^u2f-*a~L_mNik1Mi(IG*EFAeHdGLORc;%dbLIa!#s+s>tcKHJ9 z+1Q2DjD|XcM@)(C)=Mk#}3@f&aqQ9FiPmZ!I4UnqXy8I22mt@HUd}4`oWU zyf<*B@u>zo4|DhY*g{t64(`Q3cZs28p`^fzg~&JVCGR3t%IZ6w z=oR^9VoIyS9SOt(Yl?We9bI6P{HWC>$lPfC(uE0Xn? zLyGApz+p5e-j;2M>X3noDRjYGAZ$}aTpvQKWoE*gLd$YUG<>^mQs1Hy}RCp-13vSML zNE6G}r4m)M;<78|rDR#W@rr+T>@fjP)Kk1WtEd#3j(ea_oGzG0_m7G7lneqj82Rd^nxVEpc?6*6CNr)z-2gwbN;*gxSq0< zA7YUp*g9^YdCaI);7)8h`a7{@up50dK2jmEEN2Dr^LFGV0cgdS$Va8d&`zS?~DPzav(&YC? z;!sHq+sThKMdoKXgvTj8Ki18PHj}suVkBDzyN?H>4lGL@`XbSvX0}Z@Ml~Pq?Jx+7 zi@~v<*^Vm=-V%xs=QKVhRNIY?jDCk0mv9s?#(g0Zd3_b@t}rTjmr(gIOod$YogcY` zp9bAorOF#Jm#1Vrm-DTT27al{9v_yQirFc09t7<|2cr}+tL9??gx{dOJ3(DS=*0*^ z3r8a9s%^>PA!(T!tjHkX`FeE73YJ&!3O8iQB|v(I9WmRWoO!$}>{QZErimlx<{D^S zTdQ<&fxxQIUoe>h{h;5oC#FfLb#(#RQVU$a#g25Lw_fwz3IBxxp|a(JMu-m>XwdY_ zpPn!h2wMxz8T&TmA$%$0Epo!5Ts&OA7h+}rpm9XT3{^Z67}9-1ALOpp6%V)-~Ykq0s~ULL&dZkb2_hwpYr6Ij6nayn;ilph&?G-h(Ohk zk9F|7zf&3!Z9%2%AcD1hHE)axqlT+ZZCm-fp+-=8&%_UJS-j8OZApRH!iP6CL`V6@ z?EnumdbHzHAP#W&I_-nW&>w28HAWldp*1~(f=Li3>!~q21RZ@XM#*rP27$R&pP-q! za7Xq}ffib3^c$y@%ZXc2lc_L8fsY+t^WM7(Hg+Jzx;-o{u*ek`d9? z)5_gM66am79!irXA*Xw7M3j^8{=p6(@zN8Di8{*jY@awC!rv$`^wo^<7grL1sZYWK z#wQK&l%6ft8@ywsQJ``au;JA${40$yde2~m;G!bp5!{yJ z3CxD4C!t($4LkC+kUgQ?T~+?K%RmME$<8{|xqYvZcli+EmB_em>z}RxUDP{>E-TIS z6)RB(U2j9KD_DuN(2brziC=Mu#H6jQd{>g=kv%zR&#v#B#Aa=8!86LgxH`G^E(=`2 z?9i(cM)-T?XKdKZW^l>bY(ENn$AcW#y0DFhFVxtMbU9Zbd3{2lE|Fn2f)Y-8cXpJx zbTDBge6tEeI(_+rT02vyWA1eI%j1wct?ITynB1k9pTxfcaZcD4F700?K%e+~D7JUX z1<|r+mLN@aO_ok|)5vmSxxe!Tc@Tx`vfDuhG%zoSs4W;DAbn$e`E7moF>W^k;?Vn9 z4EEta-t-wZ3b((Z1|MfvFA9~s302pwNP&QVv_%HQQ%c3Y3NlN3t$q2|g~1k09WsLs3P|5e#wV^(tw~XeQ&;aEk_SVHpi!pwqoVH$owgC;vki{)Wxm zHGq3obQ)op_`dXMhUn~x+ThH&!Ln92oGRX{@XL@Wvwjij(zSpfNm>`cc_B`PQAHUl z3PvR2aT%Oo)n3O>Gd&_Kb7`{qJHrw)g4CKKC{_HZ5Pv=vOF1f7`QPLzb+1AYK3XO_ zx$f#Uy!U32SrD4VMi=+W67pF9;~M(4MI1WtsCGwZZEtQytK^y*6vs7@Eb(W95;t** zZy8LW7a?HdQR?#yDiaX{x=u$Fb5IO*hGM^5raRaq`&{R`K@~O3Jv`p6L_|lM+o>Ih zB}7W3r`OTt;S{#S`kKekJNY7uFcBwWH%v>fqW04SnL4Q%>QpTJ+KI1qdwmWTC)TCqvJHBz*gKCP{&h@5Q5Lqm<=f&MI-r6DvM z_4BcpuGuN$S1@CJ;vB3<2$wVyN~s)4GA~u?(bTU=<>OU79ZhVV+L33S)iEduQ>&zP z>$@=O&S?3K1gtYKC_>Nho`vLC`p%BDqR`zCeYPX%5bcyFLl#FR3dI*mw3~$isbuAZ z3z$R!N-oJ#77&`k5ugCa-gChZ&Jf1HBV??yvt7gIO^$2gP&h)Zm zuZv(|!*+(f7_l{+*pDj{6=)`C=i-4)UE)3DSi7W7Fj#EkTB#oTCr@53J2iyah>)8^ zARqJ}Qlr`vCBydZw&B@3GT_~? zTP#QTE3x!1^hu{t&mQ2_K?YDa)~ib_lVisuV0_8#fT%rOh#eSCTt`~bE;I&?JzYLM z5X>Y|_XQ`IAyo=_jy;a{q5jQq#ZP2C#Y!1vbrL-ESwCcDrq%3?`f0j<7ITR&Q&0pH zk?tG-?;Zx__i#WSvmTQX;}z?kwZ~`x=bk*}_fkLaJ;T2!6_%YD$l=k(S-M-ec0>f+ zJFw5i{+>HH``cIvZ_DK+yRCMoh0%&6k^S1tjfo^m)`|hCn7}WtJu#7b!rKCx95O;; zX8A%BH%~|U78QJH8TQ47K*&3y%l)xrqXWWAP+-Hfv?8PwRj2vnF{4UnC5ygMB^O~L zq>Zynq5!!{{W-IK#=zl6x~MOM?%94(kG1~1p(F^r{T9Q!jW0(?PglH`zedA!IllPv zYC2G|()k5M5~56KoRp&i9eROp2grY_5(t>pVGCB5kGp;R0{sal zL;^b57yV=u-d~qw8;V;;DD{g-O{umlS1nXK#5V=F(Q%OOuteE=ZHE!zoBA~Q0*`4k(d5zGakLvDrRIeycEyC(h>$*eFpFLaZxk5 zo?F02us_044LK)yQ2H0!GlGxaV4qweQF?Kd6#RH1wInHfZgA7PA=;DGVS%ORzgnh+ zg6*!RQYcR{u#9`54j)whTU2;`c=#O$a4UzB(ejc8)&5?ABXhR}6&6(XN`d9qVEXM~st5ZqshDI3?>#;lz>H<1ks42d!7}}GMEIPcCEOnQ@ z?y;ByrTMeQ_O+GkmYsbPuWpdK2?18&{fw0@B^vAp5AS;GLBEFEgF1wz218Yd16J04 z+;AV96QXEx88RM4&Rm(YC=qQVp0t-p7G2i9hWW~UTuecy5Y>3*#dVYm?dAB@T}x8O zhlv~UIw@7*ze?Z?CZWsiWgMZmQDCL+7{O+7?Xe=FDN00ny^Mw$#isUZSV2Q?M~w{o zcOoYzxNhgyer%{80|otYmbqzDT&K-%%MQUry#_|qRS5VUEAKYO#_8R|xXf))+N2&} zE+kqDd1r93t)_<0qCP14-YQyPcEgUp71sXC(V+RU4hD#WOH z%ZypAI#a+*FOl)ztjO0j47tQUeAL<~aPpfrahbE+i{xGSm^Iy7n8Bdw^|!h+Klmzy zX;fp*qxw+Zq`N|4Gug6Evdj){j71z!35)Fraor=#`9+9s-I zCYOgCfYW^K+wv_!9^G8X3XrJXJcjQ)^|y>mqbHwaiW9fnRU=o3gk7O&0-fsNTZ18Z z_e91)a5+VR9*Y+=_!tvre@&d0{FV02^)MjLTiS@Abag+FhX40Ox?3TMI=k(>>uTal zOw{Jcwj=aQu-MhcZ;!0ao-kkc7BU8MJBRg0p#CX1XBY1#yWwRaYO&@?H1mU~xNZZo z)^FVL^e9{(;&!qaQM>BugQ$zp`GzDN$0u%7=b{>jBLH6`5LN+TX9ZB612&(7J}iLU zLJBxX3iCt?R6$d!ATNj&imw}{D|>O;un2aV6lyu*%{K3pFn z^MR!c{hbf~=U@J6I+)CX=QC(~=(r_^AJuw0rpr6z+-pmNa!Szm13>x*TCzg2fO}CS` zj_KDD5ZVZGdx%PHDBIsCu6P&dBgsKYs!v!)!PLDIR4#!Oi9J5*d|%A$5T4q z?K$Z}uv@%jTlQe960;~TKxkc0z|7R!pcyfc#*dX3zDy@~`Y!zvJk!K68B~&}EJSx4 z3*tQM$`ruU#J)#~43W^tN&BUB9gk0xcd7+LDB?=cThveo*h!`232teLd*F%Yoac{DKOJ6?sy>ojf`Ej(`~zarK)@$j_zO+24png4RF3BUL={%Ry@mtOJ5Xq~d5TP)E? zySZVW;JUS-YWH44{>_7 zMA=CK){Clz*)LnwtJZt{Xrngy#wk{ez}(^2zyfs6d77;@X{TE_T_;EZS*Kv5KE=q7 zmo%j<;F5OCMD){EWuTRBL3B%s?>MM)%Hn24W3qXz5HXAkr3jAnuwpzHAyS?KaB5NG z(beMS;K`X=Vy*6~*ziR+WWk^pVC2p0pk)o@<}cpc z(VOhdVv-yJLh0}_SEd`$*JFhw5@J%_gU6CM-!Pc0@B*m2`rR<2Yz3E2%8r%=&Gi)$krdGul_`xL*kn;=&ZiM4c2GUted zV~;zK%t-6bmgz?2FihFgnwy77CeZ#NBCAK#(0DxCGK^zahP4P>vIZ_`%n5DHj|TuQ zA0yC;5Y`H|6hREz*Ng6VyHZ_N;g8Or_DeDH1E4G*kQd{tNJW6WmB_%xNdrDbP>tp&g=s3Qv}e+NY(`Gbvv9Cv%ZQtkr|4_Y#1)q>i~AWE z!AEyVE3CpRR|%$rI82|^CAYkD9rzi8yqE>Krbcd?bqUq;i}0bYe+xADvNrg_M)z;# z15q#T)i7Zkrg$5R91AEUa4IB@H918u*5Z7O*S4^_&nU`? zeHlvXkJk~OWNHZXeM))u!P?T35&9#%jrcabiad#$bQrf0rw&q;X0mYT2>PWK#k;Oa zTJD>&RnP>}RA1%`6nw#UgSVkpy9-Kn~G&Ev~$B z7X;NyUr9=S(#FXR0#STYUj6V#4{e7(cFXa?SN}>bVxJ69i1rTW=be;Wzy8;4|6bNy=ey)7SIb_UcZQp`Ktzpx&I23g~1wMLy~Mo z6?$C!GpinNt(a(J$b+zo$0r>q%dlmZHTe$5A+e4Mo?} z+y&Cs1F9L%=v&sCI8qp%p=E7D=$G+jfV`Z}%1_3OS-8eoshj}H?mS&go5>p2^8mDt z?Zu+?$TH9T9iam#S~||uNAemOoa#SnG6B_4pp41aXZEd`O3@_&zfV7GjIN<@bXAGl zH(P|w=*w4?U573{*e7dmq!Unt>YTDZ`*<~VvMgJr^*-I}<0{${H2A@yRWw4)WCyXxLB=;?w|dv{0O_WEw}U zfb1@53^LfGZ&kMper;Ia#k=wFm9z}NZeZWJ+tYVfwG2V(K>8HFAvG&B+iqJ~`AyHS z7>BkJ@arH^+FBm4(MPkk#Bk|e4smZl=v8NEe#%zRkW>Zr!OD7uZ|z>~83dqsz%pP8 zYG)h!jd0&Tio+)~b7p=8Ka+3Qh7{wxZiww@u`_bvDRA;%SDBrfHGVBaYwe=U1l zK4)PwPmg>==-=3+2fhdbGioU1#r$SR3x7raTSz|8Gy=VpL z343&JRDx>RLF0=(P#G-xAIKfrs7+d${1T6v93&28K5`VciX^wF zX-`O zw>A@l#m87JtYj_LEd4snThbBFwP4PR5J^$x`8jm{5(jxAE4M))EOS6#Pt_SR_dk;u zI`E^&={5ye6;Gmp96%!*-(X_o)JWFlRR`p$?y?X>X5{Zg>+3zDN85;@k*Eb5a|{Iz ziP-IH`p3ki7dggLZP%qNWR^)DhH1Z=aF&gwR{emrH@?sk2&LLjX*95+Qb;0~)#V%5 zDqR+y#zm?Ur7&96?odYfU;9Fv(n)d3VHj!syX^2Q*t@W-+Oo{_7)D`L>-+67LfNDF~DDj;MZ5nQge3PVS5CsFC>6j2y4? z9j!Bkqk(NAFX#9dLQVT_j(p5th}^330TJk%^m$C*nA1kh*PCR-+aVLuQ7Jr?GGm3J zW8Tm!XrT0C|M>?`_Sdnf+kegKyK-JDg;1(ReQ=#}*j; z=T`b{dCqY)gY!+Oe49`!H?n41iaOt}T-1peT`bdYX2xvsw>7s9H^`f}$1?HfV8`dm zi%Jq*1MzOG4M<&xJ-n}Hv-?X3v-1q4LdyXUe%#DQJ*)YLJvLvk=J`%V#*l|6<)Am! z@X&iESb~v+Vz3QL7{Naco5@10)P`H7gZmu&DV_gHF2m`df2B)dF<#aE&wT2^0u<^` ze6RS5@iHBK)*n})1bHc2YC+DEO~Gf3a?!Ib}XwM}{J1Y86r7TfeUgClZ1(m0+k#}_FECA^zaEtK_R z^2kGGJCvtwOeB_DdNg$ppnNcE{ zX)b^k-ke~UYKlc0JEBaYMvAeg@%Qxce<~|}@@COJ|0yd(5P*Of{$Kv)$s0QuTmEld z#ko7GI@*tXo7|$cj?8)|k!+|-0Wg|5wd_VI(s_{d*`P-0xh;Tx%TWo z%d9@`%ZQ+*c`kB@G4KmVhHTW3YFLFw}(mVKX|Eo48>xsCnnf ztiAo{k-`Y6=)6?u@(X3Q5gv+szBK`w{6fV%iYeFN$kDK-b7~8+BkB|}1%W z^=bWJruukN>_BlYLWVYdbG(KqYoj&wMzjM9t=K%BlF$Arq zp4qfg^(S-A((hm9;;i@$;<0_LA=jtnBG{V6rF$sKT{6@ju@a@V^~EEs#S_*t4l(D; zJNhEtH7v7=$3DH@I5Nho6qee~H`vNZ;a2CKGD4>HJ!(zwhh8gEjliLtB0XhN+j?4q z#CRC>4)Wk+S7Wj$3J3Kesy-1$LW5me81*@@j4rCEE?KDqM=ot92&y#G(b;DEwv7Wm z9*TqbTPb$}0!VW@B7wEBEcB|7C1gI~T_Bw@P$OCrDM@6g^K>IR(GA!ZO!O1BePtmY zd|4A`5M$AFN{UvEHka!?Dw6;KeT|Ha=BCx|uwN(h@2LNavUiHEh254#XKdTHZQHhO zJ2T0QZQHh;%-FVV+c;VK?sLyx>*1dNK8@DKqWWGtd&e(EDt5W zd`z((lT~q*dA@Q)Fy5pU1t25*y@;)%)OpnFMY|8}MX^Vf(O9v?d7A5SuE}825plAZ z#4D(V#4F%^VOX}06e=Ha$}q7-U9jg!g}AwxRp#eAHI0OcT^UGojYX}l8r}DW*};^M zjt74J8xJ#;GC;=VrgG^e$O=jkvZq(EMl56Ys`3@gf%}-64SI50rep z#~CmMq2K9ajktLUx{33!rPu0yGq>m_NL1wC7$|&eb3BcpJ%15k^Zakl#jnW~6m`Ld z?KA(Vz&{5DxMdWMpFHa$=-xlqe!H%>);?-we#*vIeZca*l~Jy2LgH2NL~j-(hU_EX zLWI}F5OP|)*D=_Q-v(UwxmIoz=nfZf+=Yt$FpU+CA-#lf`110p!0Pl}iHa~oIZfpX z5CRTPVr^`-a7S2{C9AQ?n4(HW`8ZTXzaL^bf`yuilsRn=@~m>lc)9mSjf#NOhqi^p zUg=6`rL^1f-Vi=G79v*zAHbVv5pEpMI)%H`tg}+g;WsYd`kL!%H}&nHI8KX;0btfO zBl97Qlm{Fv>mekcIH32rFKP8L(em~YtBvN6*5a|&DA*ct$r^oatP1uudegUQ&yY2w zJYxZE8$@o?1DqG8*yShVIGt7=gcOpGxpfpTldICl)@;zsVj(j^Fzs^zaRM7wd)M!3 zM<}u^lWz4vwI_a&5XNu_Hcc9R$;@>cB->0(fl`DNzq9j;ox z-3bb|;jo@I0NcKruyZok>W%p0%(}oMLJGcPsTa6IbOTBub*|E4r=~>zaaI%SW~n{rlC3;B-1?;Z>YidVe@(Qq=0P@ zRKz~!MS6U#3t>Qc=^c#6` zxji}Ah^@<9Cx@RhZl90KVFdCnMg0{}u6N{=hh++cX2daS1E0grwSZff~$f-$Tebkg)r-poy)TOGn zWC_U08jpQUGhp19IHD?Q)S!ck(n`0$IIIdU)3TT++z}()A)N0#{w` zjBGTo z^HAJQXmI*U{=}sm-jlzINWIjd{Le0eQXd2-iuuL8N&KxnG zGeV7M9iRi0^++p09mWWBNtktMN#cwHC|rG$K@$YIZhY120XYnQw~s(pb5T%;LmAsT zMCb0HJF@$bz*ciOF}EF13Fk|yF1XW+sMsEk4hbgO5Tg2kaFl-q+DBUAnVX*lNT2r? zU!cu|iR@|Q1JcdQ$eQD{VCYm~s96Pneb`iCgii#uDaQAl zmrQ4yje?dv+=Sb;8&@<2D<nHxA77&)6bI{lYz z&i^iWI!ah3$Ua-d#zOTp%z#zEc_It&)@pB2_%y(psq7_{yjVW6XLlK-rGqV_feE;@t=V#wvwO10jaOxg(c3cnNb02dYZ+?6o)BOcN z9{`hR+_h%X?c;zw=74r^&*-o9k0VCzOz0txK|^dE*;kK89p*SlNbNC3OtDYvS4Ny~ z&DR$d5a?C$D~8iC8b=XF@9(*Z% z2YhNXeKjo@uAU&_%&e|^e~Q^HR(=|& zhZMNOH&h?5T$C0YK_l`+=Ovu_kbx>brDEke+iHB*+}vI%SF4Fqqpv!M&{>(EAQUWw z76SX@G^Cv~=RR3kiNTt4j%tp}(Hx(Ho`I*Oa7(*YK&+-FrUH#$p$O($(Hg7)a$S+y z-{}v6646?12*HL-&9ocdQ}(Su@3&9qD0zjmj3e2da=#MafwRo|5cN4?ea*a%wamr_ zV-+Qi$uihYu^nenLmTh(HAU)RswcefZ>0(hn>uwcRQ#LFJW6z8fv4)Rp|IIdouq~O zJwg(fPEpXPIz?J{=i**i`7*v(sUs1_W;~bFp%GJJHn|#g1@ZcWF?u#67ls&ICe&VP zri7&Ll5kk|&%}#S3bx9c+@?TX$X2qs?#xP>k}HAZtc@_cFvoynoelFR@igusPpA^N zn0A2p9Q9i{BEh zWIHU}T*-dP^2jfOFumun>$z<5DDQ8X%=7#po+n*ma#*boG-4~fH|4~$`0Am zLwGsX9gl{*5%n(dj=Yim-dzkmV=f$9Phggo2q0}o(1{B2iS#IcD;+lQ`-=jG!R-{lH@MO(tbxTIrmZff zF&#%f9oN|L{o)=1LPE3e4-7Mn>XX5tK|*1M*-(6K_T!@5UUZNf_Qqiqdh9|b8kN8H zIUw7Ba%aAAHQ5sjfC06ckMUYHAYZ@q4jyyeK!d*5;X}L*-pvz#dNIIPcG}qQ<(2bt z$<|gq0OK=Jzkb@AkqU`pg9N$`Et!jn-cuH*OY%AhLqZr`SdZ?H4Ocr84oJCdaAX8& zQx_U~CFzgf;KA z5D{c#)vC7Y?ZvDba^XUy-G}Ti_;wlF`I3?f-rS=YwWX9PfX*5dzOfHZZd|onC}#HY zqR!`)VYf>%t0rAyo$>b+f=2x$X#(?9S1GrkK}I`$NW8)@nPeE!&nctKlbtPuu0(o+ zpj9wAB&Rk=t2b0nqrZSxG>|cijBj{CIs8lQME;{|Tl2tS=^n>Wb#MZaP_7Cwd{WRP z=TPnubzO=bsZeEAGLuC|u2hbNEUWOYEIrG3F;0;cC3w8(KR<37`)818{ll}oO_N!V zO4^l_vi^SK^ri~rM_nHZGe3PpxCE8PY1@rL5<0$hR6)PmURjQe2stke1PbKP@yE=v;qP}F~Z2OG%nQ2_ZdP+ zkx(-sKY7*<%U@%!k~JT$e&sdM2rctzo0ML>`ZX3|z4+&`mZOU=H*i+RI_qxjcRLr2 zpRTxHy;W-)jj*M61bQPqu=fiOKYF;$Y#;ANcU?OylG|I`EyL>{a$;;3#$T<1$jmrWL1WVbUt0{l;{G&M8w%~^ z;`wA)7WI6BQU3 zK<9-~Nc;D`H`w~;OvYR;t+ZleI2L_MD}tcgHs$cedY$V$vEINiu_kpU=C3sXMTBrU zOj5oMG8rq58F-1?dG`s##$5Azy6oV-}Tcpw_0}+T=4F^O`8Bz=iV_ENb=SL=`9T;d_ z83$YJxe)0@_pqg?x&j%|sIGTxf25{3zZqQK-37ipWK3F9CMk*jH z=WaQ_LHR-ggG3Y&_UGb*WH?us z1qXqEeY%+H_PD-`{QMkFsrj{3YnvPD2mpFzsZJj&qS4O-^jueJBrzE72cgVDjRlb*I!jeqxk}%sBPJzAfX; zUAgQl1?h4G604KUh{`ThdmsZNpQ~AxdcH|`c*6?MNegjp<#e@^3P&&2&#Q;$JFxMQ zW?kmWi20Me_7#fE^*cgc<`zYvuZWP=Fx-F_HMDR)9p*2_su&mT^N4YIZ!Pn~jb@-i z%Q;v)-p?;X1fW6C#kx!;vL4zmg8K=o&D z>xpL?jm`tT<=BH5RyjcRo3Zhp(i{*Z-BSrP`h=cZRn(MO+*b9EoPyF6P_umS+ZP7y zjFZk}piekAqor_STJa{Rh^T|%EA&MoDu#A(ivWVUNc2}8h9(La{=^V6NczBHpgt`x zfFoY4hg{s?<12f`NKM?$ueNw`llp7LEP$)qP*KuZ{Z_w>Mx~^4nQ3`+vkgoGYLZA!+Y)Xlhd;ifywHx! zuLx=Lb>qt?-ekpD-w^*EsJ-u$&^$l*P52Y6oc|ENMQn|Q?TlRh1H-cvWaRpOVpS?m zRrnSDA^aAQv=x(&7EwZ3S{joM{Ypy1UZz84jb_*EbaWtquLsX06ICemR=;y%;`jU3 z#l_U{@j92U(FJOp*rLGXP;*p!6sS;MMI&Phv}y&9@rYiC(Wty@Qu4C|ef(?y`s={L z#thPzyfEe9w(%BsdFt-QW1sJE*wKB@F%kk+5t#usOiWa&6Gy_@KxfS`TV4t<@Ee6w z?@p?{K4DP_^rPy!HzHH7cV3BCZ+t#Gc*00R3uRaJZNs3!8F`*BPOxRmvNng^(}_&U zcUnZ=J(*T|wXn3)Wr@)QlZ!PWg}VDX1hA25TwcV#dmw?QC9Vwno#&{haPdX#z?`Q)4od%HeTe-};ZS`2Y1kSN{!xKaV0}ZStRQqI#-^q=x*>1D+NO4UQnsPmzxz-ebNAsjgKg zU`|Af@2~3M3m}>xk(#DHQ@vF6-t8{?_dO|lNnT2hZ;#`X>&>mP%gr=Z7+z|U!(-gr z?RE3#U~~WV@!rDs>!P}1 zKb8Tz2Yq^H;#Us+KF3xf44obg}9Su7sqd=w7O84sUWhVm|tYC-ccpYgoXw~%Di}yWCt(H z0M^g*-I|p(Lvn~aZKcdd6HzNHFTI>Zeq)Z4c!w)J8$S*PLPqVqp^RY>U3n;87=mnW zU(!*WfqAP#IESSw?)Ee6)|t}O)Mb63&`>j-H;uH4VV!N<|y6NCGrR0s3w}hhag&Mm0C@ zkix-WlEn6-kYe$yMNLafGY3;@RQrh9$t3x@WGKnmwscw%W>6A~n2-ty3AdnUN>IMo zq*T(9!v{A7rdoL#%0@3FlD|ii3jm>1Q}o_FHGG1>Z?ZzRy&)li(g+6CRC^Kgi+&ox zX;sm8&wdPIw5LJ$PDw~Nlcn(xiq}HVel}889&Ap-Nc(b@U8X{{aEn%zoG6?X;(E*- zuEPX-XV-fpb~Xlyaji~j2<#-;UTKJC19c_U?K#wd+)3Mn@oI-w=PH3nR33KF*ef)~ z7+b6+lBn|92qR}l31F6dpUI1M7Ybu|Mhch`_zX!eU#(A#v3p1dW4m^x#jD+-35JHl z0E=ULLbSU;omuaMnCGEJhspTjQ~K6f%8jY^KxH?{4@v zy2_5bqRNO!8uR)X=rQAltL9rPFkpIyE8y=X5VEAYqc`p}_#)FBS!mAX86V29@2bH2 zm@~E9cKQ~%NFCMTs_G@D1?xm<(Z#U5ONi0G?Vw$fP&L&wXSDO-t2I-cUFnJM&cE;7 z89IheBWmMCb-HRPRyXSnNdWyTr;L+`QCg)p!n`z+=AH`IIoFp@qq6b>i#&9Srrk6@ zi6@0tM01u@!G-08^=v4$Z(_m|hu~+8R%G^Z*Se&c77-|k{__7g$DI;{1N#sfBIxEa zm{Xk!gS6M8X*)IldNSaf^w;vMpq9<_Y9^@n-3xX9g+MXdo1%si95a++&dqNZ&`(bG z?vaEAsf_Eaf=OOya&|{aG~4_HlF04*C+G=t55xsV>^EDvJ#v%#Vl%u$V=JorBO#}C zh0B3v$fY3;$BLif`WM0S7k$=^hRT+YGtD?p^`X&$8Xar?bhGyU$nWHek#8N>1-SKD zGb)B>R7vuWFAuq@ZPILNaD_0md^PUS5S>sTtktpKSj1^eAp9S=@PEMqF{>)hQ=tmi zBtjU;aESe0^$JrJIv#an+Wm-a=~UVg65CLg<90+N zb)q?->R3eZp$!{_Yh~n~(X!dMPHLwmSApF;{av!bxF61)T_l;=PpVzO>xe_--m&9j z*Sdvr>$d%PU>0xK)_U^LM3+a}9(Y6O8oA=~=2dddn|~Q2FLNLn(&?KeT}5hX@_;aw zDmic@t5-z_R~#k??rDQO&qX90e176L8K8^^23H~#K1N|%s`TjAEJ6kw=2%8vL|11mt<*NOE z9CNc0t>lmt;DgQ9ZCYr81lvl%A-BxOO+-Kf0k>ufC4``rd4F=!v4`ciMY|UDtT2)c z^DJIL*pEBOA78#PcBgjhamRG@znxA`7oF2-O!Jr5e0+ZZdbqj8`QbKX`2nv66i~%c zC6dLj;;9oV{*bc*Lo+F@l}f;FwO(g((Wc^&v%OraJ)$ItX%**( ztN%oMRUFFck-bc3pt*5Jm~Av8$BdA;a#rpfa@;eF<2MV^52 z7!lw68BOuBAXsGXQch*Dv1)lQRT*YRY=57(ZCrBSW6+CJx~Klz-`E@v*Gi6d*I6Is zPk6YKqV5_3a)P5j3z;08YH=H(_qy#u#YLFxJtoSOezc@qA3QYKF6rp62ND9AIjML; z4B}I=Hn3+B^{?wNDf)LgUC0Ggh zeE58>UAG@!;oFt#K>)hqF7^>4NbePl1q81#qeS{4CqDi$9HA2|Ii8R;FoOkFQ~$8CbUMLzs7Ha1SnsFx;L@X6WSHgaY;$jRN@HezNy zg!H7`*R~li74zhPBc8n1^cifZbep_a&W)Ri^HiLCYfQ^Ro@wB1mzjOXK5?q?90TOy z7if}^P>osqbCmjY9d(VEB%}sIfh8;BuG7BsCv_%6RrV3jh)Opdbt7CW)rt6k%IA@{ znIM*{x}yPVl99L2N;w^MO0&@iw39m27d7DAgEysNc(^{^f>WtsIf2_hkoVm8OM3sF zWX^`{zd(MH?D2;|!~6d$$rMdYO&m>ZjZFT>nj%Zt;wQ(DdFE{-xsb^_sPgAv&`~L* z5aLvf0zfU19s@Aez@jZmCMObm{>};GTkfeL{Ykv-Ud~Ho#H3HyXqo6b&i;Ls_4@d} z4)-g;9aRvGRPbcL7%Pp!wz%ItFb#i>(Nrjw0bu}J@3?JU5Izkb_4Sp3k8aeR&`4uQ z31aqnqSoczJPJiJy=>KUFgA9~X92cR=&@E?k!IakQ^N%8z^v@NY6=6w0L)N|iU|<8 z&QgNuX%T0AAk@o2$OPx7qSg$MmRiGakGexlvJ<$;HQ& z*82%;Grl&KMtQ7Ug$cNdXR_YKsK$^XgB)=g3b|3cZ))X(OmQz5{1FXp}z@{J)^KQcr2f#O6oCK3gt0zLT`#AnrF<-&tv zTpD5_0*IBmnte=%CsT}(Gn!ItU#&lkwPfo1c3Uo}Hbo*GRk{eu&=-v%kgnj~nB)Ay zytZ|Nr36(iLm{bLw4u|J#Ect+*{1lGL>oU@x?2!cbtcUqr<(nCy zv-zBXek}p3*z*{G`T*y#8A%!etvh7JJK*f;zDLki@XkH3gMMTXnSIi%#C9gzT~=Wt zhhcy@^6+=J8~_rf;Tux1m|d=ri-4R9Xn|q~N7TzyqUd`-&r;kg{`*axyOaUjP|BN` z?BG6$63))gQMwx+OJeZQ@k7$;FVN+8_Z`FwE0`^37@trCGIt4c$*ugJ`!&J6Cy+s7 z5JA1o3I(}e3<@!U?1;AN-Kv!-fsbc&>Jo~9Mn#z6*zD>Sx(jMAB*sd72%(_$+XR0( zMCjLC{o!3mrKOY!6817&8OcI3E8vT+esK*Dh!NeSACYel5M0`W8zkcD#>D(Nh7G}( zCE=HKRjiL*^4~(db(6UpgYg&+DtY^lQ zA^&jHHeEZoHf38($Pc6N!EHRKdHHow-&QOQRs~z&AjPv}?bdrYR~eb0s^DVnF!?N{ zKZe*4jV9v3UqWME1_KAsjUpL_(2YLWB9Et_8|E*i5t?4}x{E&DIGOgU(AC++*;3#aQi|lk(fM97FKuR5D1SQmSn3)!LbR zN1>c5_z{GLkVfTY5p`yft4{5Mu~U{shHI2qu)~p-tL+R*^{p~q!WZTZa~QWLDm1c{ zbm z8^i^8Y!ap7^ct;ou`^B0@5$#t7E@)8Z4#J~>MJ$9oyyBBS=lJgx%va$+p6E%9C{xr zk<}gxS`#%BE~8Nh1G16VsZk3jZ}ZQtHs&fZEaSB9%ZKL8oE|9ai?w)IX`IWgoy>#+ zsES56`oV))mZdk3cp6EgEL}VoW>`v0)jG;#&x;;fZ|Ji=hH&f>@|s+e*GL<3Z$0Wz zQ~@KD_j?hY=VfJI6;~Htd}$$h57BOU{YZ__IE}f3vKX6|A|`7d7hI;Lx{2trZlq0rAJb4wDW&w9##P1h4Ns&$Pf=5S5p zKPQFz>6=J!{T^E47yDh@oG#SI#P;s8a!#K7Cid1<7To=n9fxa(KAANJ6Ln0=WR$is zaxgNG2Hn3k%n5|iEP8miaauXt;++OHd6>oamlu6W43{4IcfN2~Vp61mEyv)d7HhGH zM}(0$v9`<9#OFdo43ZqqBKg{uRc1fVI9wgn>Y64GrsqNxMA#*EgiXP;5mITQLP+Wf z``gQq@cV2-*2O}U^L61Y!(FbcaQ!*2I$B3WI~Q}g5Zb0vX~{c6ICr4v-G&U&>f;dZ zMNtX=+A#r)f-(+|mRDhQl$(NHkP(~kJ@E}RL77VfoV&XuL_x!r z*w9T;>$Lnl-~7a!3ZPwb7zOfI`NRO;F$1_Fk=#aB(cVZfeNC^_c0(siNa1LYw zQUnkt49X*W;7DYUf}lR^-q~2svWf*@G@-K~1@FJLmAbBUr(i9*)$)-T3Ur$b2L7qM z*0@W)WQ8)|uec5*st9&D1%7$uA!b1TtR1q9hpakTOV*3xSSbxarqF${jG1F8OT&H*7%69bW0Y4kc1Z68o&Xrmv39cr!~>?xcuks&Ente; zg&r6kvrj$>`NaI5lDf>Cd5A;$wHSto$nTR|kJ$A~l1e<7i%)o&UZ=o0D}de5S86Oh zd`?$kNj1?0#l%}=RbGKrHBkn|#7SgTQ6amOT&n`h9e&dJ+fVXIZ0#(Ee4TF|@ee`P z-?`IQtf3pO#bvzKP`=ZHS16?yEbMRKc&1}Avg_RFkN*IPT&Cl$?Vm18`e)Snr@M7o z0~-@3djq5YLH|lp(Q#T+h37#Fhz%o$2*V+>QQRno0XJNASPvw24QGg!U~qV`=hf9t z8&SuBk0drcE;&GZD1sZ6wsKob>oz6jE1&O*r#6-@xuVy;y4vLV{bcU)`tpqT2SA-) zXrP6#JA%NEE8zv$&8YFfs5RtWfg8RKSqRy!)hTV5`=I0cRWa0%B-{|W0vb(K$|}gT zs7|NK&TdK4>hKtPbWHBdO69avRI6;g*tYSSX&{2vuC0p<$Fky7mDDGiKABWP`$89|j^37_`zfYQ#Ero~|~X4YJpc81%AO^w^?jfjmv} zN2-hAhvd2n7|w4MD;H&@rpN5w9$iLoIA@`jlrsJ|XQecnVEek~@OBAhXQ2w%cCPeQ zc{k1w3YLQ~MzoIb{~XY4zz+c}4jjXTdG?E;f3twe+h}m;6-@*}Gjw7!;zIdkdz>68 z_ei|_Qt=i3q+LijZhPg2L4|Bb>hiy4>z}{F>;L}cYx&E*%(Oms`TFWH2%tjD-CG=3 zG9poGpel&N5ghdWsXdjdR4cKN<#%~F0qddFTvoQJv;xg0dtXAKihB3j(QhhY4QL=9 zW#j5+wxIP}Gi71oLv4g+(?fv6{7brl#b=H9tZSgdqVx1VPA;X5%^Ni-y;-(vz@=j0 za@|gQ;*ZCpc~Ab9`yADkXe17B3X)9aJ#YIhp^4{m?8;MfYEcFaK=3_0LjaWc+!vuv zBEj3lj$%(X;crfTJ<{K#`u87H02y)KEc$;WpUeQ>F}*FCE$HIuM5NKX@higUvwkT# z#*+xG5=oCB{UxBziNPbh+miTEEG`vhb*mSAas#&`7&EwouFwhMKPSph7sEbZ5KQxm3G*2&OLx5eD5o&aEcY5d zcap8&&X+acNEr3$F?p2})*~J?CLfKa_Xu5?ZasOeAFiHl&Y5YK@LVb_^31)Al*8Xg z&>tZ@PSSC-#wYj=ztI98o#A=~Ki+!XVE{9Z@X6uGjmNqQ*t+9VcLfE8Ke!+$d?o_t zBLrmOm%2d!p73Zy&Pm>z4Ic>!g&PHrZa~3DywyiPI*r+onerITyP+dW`|URoo8z%Q zjh#%wBAUQuG)~K@u>J8LGzBiVD)ot<69>%Cmd&eX7Z4gcJbncQNsmhI1DgtRVsv84q!F^NMk$^7tN2Zt-hsfs zfnkZlNJxKgdVek-9UaMYs78kA6BAuL#}k>Sm(zNBe}Pha1hFsC!wX=_(1Q#R=Jwe0 z^_gKYgcKsfxN(C}2fYc0H0ovH>V^P5lCf;F^_ zLpy2gQ3XcdX+!hu$U&xfOl`$8kA6B|=#F9A`yD4r)Y5#>nc1&~rhc)R#+Qzrb;g=Auc#u2^S0ubzjxVKCC>7+n+Z|QC z;S61X<|v78^nv+wa`MF;IQ&NwjiGlIIAFq=VbmWi(kb}1^q*^ws6>ELB!|`TNjn_3p>p+npNQq&H zb7gL9Ekf#z-I`ak;_q@gXM{mmX1VA-6o#1Aix(85j1$s0%#OH^H=RsAEP?dgJ~T5E#AFmcaP`@H})SdN_s;+AW34HWu`f&*#V>?EemMwH>Ih{mm@ z)*0A5w;+W+(rB#P#^5K9ETQXIYI-q-Dw=mPY}{hrYbtp{xD!-rY&lrQTaq@Nh7SC2 z=o8Cbrda}->A9+nuC)9b2fNYiEkNhaQa?hWFjChyETM_BN23u7na#meYe%^l7aoG^ zLuW>eoi@RT5oMgLu49*r-T-nswh+Q*-8!4~j_GWQtPSbc;~|-1hXR91fJh-hX^l2| zRJ56X1_Jb>>5&?d8QUgqy}Kb*DFAD^O1HDlB2>(9NO?jIS~$Rp(G;(-1Bl~ROR%{f zqePWrli)s)h`w0dFTV2kS3(BlZ?LYb=7U=e>GILT;9Q`5*+-3HLtS*iMcogrne^lK z?3E*dl|VF`S$P}s52DFZ@Ud9pEUvj0kpu%;u9@5FhIp=P!&FR{+F%V&8c_5uWKp;< zP1$|)s#DS#c8MiQ!rkmRK7jEY!aIc7XJavYlE~0tIC@c)4ozsM?;9n%bbFKhA?VA+yF}$5sep`&?!JNFph5Cp_ z?%L$wz`0QZ2|jkqw;vZk7(rhLgHMYg+CGgxB`#ESJ*W-1$>qtA@)CFee!jz-+4v@0 zIoSr4*nWfld*A}~LgJ-B{QC8P{_7Y2KP>Y~&I0QHRn-Not?i8d#l84H%Y-U*D0giU zlrJ-<^-b$yW*NM>lA;;cj6$rnU{+!q5*bB}$pT`Fw_JR-4z|f;?}5z@5(R`>lqz3M zWlE7l1CklSM$Ng#xaM&AQabsYu>8i*T=H-^<(tgk*IS!~Y?s9^hwDyeQxhNeIZQtv z2QL{Rut4hgq8viZH`pWuh0?G^>0qv z?NNiU)jrvSm(;HHSFosh`nMuW-lI`mZH_5ugRSdPzdKW>jsISVV7NNO)YP`7h|sxp z#teQ^yEfRyV8PiRR_H442+;Bj6m{ulMtEy~Vn)<7tW1C69R>5!73WPy0ogu4wQ?=w z;>taMPn2&L+NySpw-?0K7iP~an6It{zqLcF=IoWkAvKK-LC;Brn`$H zp=;qqTSS$acO;vutP>Sdl*fQAif5#QJ8ddbdYZ9Q)Hd>>$0U;|F&LG@vXq4w;oKG$ z&o?sv9bzIK*L*l@8ah~v12>rcpjs#tMTRt7WAQ_Gi2{LW7+||r-lE{at{Yw7x2P0j zp<=c#nx5T4Em){5BcM?@{AE)o6@XMMZ3=@i6&0Wl(&@4(P$dO7Y;+J4jGdao7)QZD7FT|bf9=+>!8ZQQS&h$NlGLkP16 zF&Kba7rv3UFceT`ohX>kC{9+(t|ll{CrVa%h+C8<4m<8+S$cp~zLZTH&W8YxUJxv} z*q#mEQsNv%Xb^Bs{h295uB0DIe<_f3gruH0FU-njbo+h#<@97<9zkq|_g1nyCBlMgFvqI2i!8p6XnZU3!B-k+d5-)iY55=VKBxWM0Rm|G z14JvnI#y1zx+f;9zez%$Pl-$JVRkzRY_L+yyP*S;om#nf7YTSA9_~Nlor6&Yh}#1# zdgTFGqZNgm4UH2Knh8-rN$cVEC9Kx=5IuL&Z*+_hRONg^g zZ-r3#`k0EbL~*kbv1Ta{3~s4?q-Whw8G82j5%~;g`Alw^KD77H+-3Jtv_Da@Q(jmi zws%0nkSe)G_e8Glv^s@5J}(qQ2CmVMO*#qXeOO-wclI`dPYt?CRG~x{0>`K@LS04N zt9v)`{4UKv5~-FQMd@NH z0?YUk7iWwmI67!R#gkqP2Ro>#R|m_^4NXI7TTIxkt66Ev-3StzVy#;G{?iV1!-{C{ z%$l3n^cI+EDym9D(1_L5P0;Nh+G$G8FlctNQxikS5n&uwI!iJZ{omeG(Csd(S}5i! zNDociXr(GHNzpP1P?t2Ey9vOf4C&$^lOpOo{!vH5eF(|dGrI@rQ}i5Lol^3Rl_ez* zvzCkPVfube)TR~lws<~c>9S+R0yC$dIm<_T$T3vqcF{V(}a*6ZN2H%RX- zw5X9Gk(&}rv*E*nmc+P3U;7RI)ZVh-%tr@nk7nTI%(w{Yg4otV^TwL~S(spN?rT~{ z5(Pnw!YJFGTM|xAS|(>43^;9Gjx1I0BCXfv-rrD{xP{#Xf%RBYstzDMjvKg2X7MX=WQyQbj z`fh0EPg$T|#H4GfDnb+V4UPtP$cusYb4!iR7QOaj>QD~G!0u9#n6X7ktJi4n54=1G zuo(`k9xHc_3eB`x!!*mxrr8*NEopxBctniv98Q{VX$tpi_PE@oLHszMJt>~?xRmo5 z{s+HHmq1fyS*u=t3CC67c?`?TA5bd3F<8nt@QLz4Kl56;?RF8986^4@z$5BClg7GI zo}I!ev)Rx1ioQX5idEJhshdykV)&YE0vud7-HKwpEo$uZJiUz1NOws`LnirBkPOrN z{MvH)6jpdLm;lIhDr_x;Ghzxo#*aBrVHPBDy#&1@c4`coC_-(VgRUs6oLRP-STdbl z5(keYkb*f0Aa^F%2dMEw5dqi(eUfgdiK3ygrmgDLJj+T0`G{ul-a8{&A5AfAF(>B; zbpRZXc2s*>sr&wAQ({u1*S5%rO+~O2rzKv?Dwtb48vnzpXlK2s# zJd@0xi&Xuxq4m(q(t}aU0f6GI0i{7=){5c?J=O{4bbrW0OhLO$zDjszUQSjukvH*) z@K1fb7)Zd>B2cOv!(okbF{dxod#&%AGB{#Hy#zJ!V5RjSp<*PK zwYUZ8(3M|Ip={ISh#1?T8eG+DllYD&kf$HvQ;Zk&Au#weTsao)I?ubK5$n)_H%^f1;Y4^Z!0id*srH>&kH1(6}t8r zvUql4#fOdSAp-}Z=un%7@GU>FL0N9vt9}O}){NKh(MG7HeaG+~9rOU0RzS!}1|YRP zZ)He%WL*(1kzH}=Vfv)CD0Ei@MR0J4J z&NGx2%;bxanlUCvKMFzek^m+!ivKGm$xgM8{qRfCi_KWMFEKW`E}Dyj&Zw)(97G{7 zGO#i-YUDP7!pBX3lxiN47Svus6lb}MdN({U23?RjfEF&r3ODF48)rI>Uj*DqeHnu}Pb?%xN>*OnAL@+aL@{-` zb*=EAB?kRWu1a_#MM8HDU7apq&;6WbsL3L@r!d_Cy8)rTgU^Dv0SvvFwUhgP2+6o@ z9Gh(XaJDe-@mSF)ouxGT)L9Xu2>KDJJn3M1DvypUtuWV3Y~PeJeiWncEiiqQGzx;L zz+@Du&3P}zgiAJjMmzU2SqZhxjI+9^L1G@?3bAOWMn(yA5GE>7s7wG(R#poWGSQHO zmn5A=7FO{nk(64&k;EY@-;i9&d=*zmDsCdzUimOJ>ZCj_m%pkoZs)d0g{psl{c#W2 z!*tV>dl&{6fwB;rm`seCsY+ut0(u=Ynd{~a8=b3SP{aa;g=B{oK4u^eT^UKcoPVP_ z$`K14O_}l=s{A_K;o3rmORO+|f&0OZl0W6CT7ebN>fkyrHwcgt+0yAK&T5Z-j< zSu)YJiEA;kc<0v|3iJ*Vh?;|p0FtY`Sxqh=BCpB~Mm3XiVWYIDjQM2nDZNTB%*KJf z_m!{7@V4EM&xxu%)FpJBnsJ+dz>7a! z2=c>zv%lM{0Fd3NQ%$uMgvxa-Vq518Yy0b=v$qBey5{$=uz`BkHZ*hwWbaqxoa50U zj3@)I`2r}mDnbHWwQ**(u_6l(-83yz5@VE+rs#v5*%bOQ&OnG{jQ~2jgXfyWSGK?(^|U8N<>lp-y=;*4+1)bF~q?vfV2QV0m%t+ofFzTu9j zC&Dda!xCCFE|&Hct<0>otS9`_>mjX&4_2N}p*NAnZHP&~ppQSf=BR@N-_%}tdm4#1 zgLshBf{;N}Kr!-~fn>2}2+*I=J4%T`M|sfG21(w8Jc1bgIv0)C;~2q$+A}`dI)NI> zGu}U(f0Vk|80&9emitm{pHP-06}Vbg*hQ#kk=ozpmjjlXaPpzQPfDhBmG$w;XM5N>AGKy;Yx z%@1RR&CME9NQB>eGX`g{ObR!?cFZiMzmW?k5U0`>poW3d3t4yFwPV z?$i--sdnDZ1iD=46lYmA-JNX+*(1|3 zQmMLCuf2QQYwg`vZLjrb|J-}cHOCyIf4v(tFkxa4BAo=AKPzcIF_Qo?NLjV7 zjNaI;3Hel4zrVC)q*fD}c4c+3XcaM?l&T0}L7-a1+;X#bwM(NGOmlOjwDuj(&9n@8 zdOGR*L3aDgrgKl@){m$N<>vQ0n7?zJuYP}q2dP?@#5q|Bt&A)eq*n2Rdx={TKzXrRJ?i(kL^Oi&Q3vZOHEe}YuG1a!9q7>?#7Bs@^-br^+Y>~P zx{ZtL9`MwNx_&TV$44@Hc!uH1+slJsnWst=XTwd{84cpi38i4gbvuB}N%F`=K1K-Q zr8_K(BY@^A*~5YxMf;_PUq4VX-$H!ZI#oAtxZXVCRan?nNT+aJl~mi+)+ab-rcEtZiNckC395{g4GjR&15w0h49J>PZ}R zrur#(eS%~@FM8WZg!WGz87dQKH@r$#A55Cx}ak3C(l!E1&gY^apWeb$Kjz)x>YV$P=RVyq*! zcRpfO0B7=OSjl}D*%Du=kfhi{q#2h18Yq^DWy#?K>nSBx-O(0jftiB#TpOd+ZKX02 zTozBqjyggLMNyT)fMQcB^jJl1z>Oqx!55f@`{cCDb?T|4IS9@4J!rdiUv`9$#1P>~ zbtcC-!)(1N9#hP^6row+BvQs*z=wOE9v}9*%}g;)NHO;kJ@`JVLmEI8hSH-(V)J^6 zmQ6Wj!%ZZb-EZ<%4fkXgiN*d`seC^wf^AEbOz>H1U3t@aaGYslPR^$}%vH}=OM1{O zviI+jgPXNyA7qUo@Bpl}oFjGQ1{?PCB$QkuYm`U0uL>HpmKj9%y;mf_E;1(pq|aE- zwgq!u00Uk+ai*DEoO?;9zV**Cn4tutsIS%^Up&M!DLqAO1i(ku2EMW*M^J%bZu=ZV zwY^8I8@sTJEA0?6-cs4TgOGT(Oo|~?tjY0lriC-MU(vznYxn@A7e3Q+8cX230AacC znFo5x>T1~@7vAgvI3B}38Qzn{!mTpi@4;Em0`D^^ZodHi^H((XhP9_koU_+vi+^Hc zldDAstsbI-l6bv?H*Eg|#YNP@p>&pgDalwfK@A>mBa=-nGTMk(k&S7Q?%NGEw}E z&}9`Qsu&`{4d7Bqk*J*6Tz@X2h5 z-vXwf-;B!&|CzEp%FunSaV?WS>I=8jk{hC<6=)v;ym~2YaV42SJdp^E>!ROBX}ECmbGmghpqE$r&7a2<5d}jo1*L- zhE<8g-`b_5%GK#%ayxn)njJN((=UE36A|nV-Ir~>f-A>8jA!wf_Gn#>%@wSgwAaZ( z!h?cDo)4~$q}8tQ#GAUKr>TRvnp@ z?_8nD)PHUC6R+i%)Y2a*ClUv+0?M#bt1rFI>Au1QixHG702Ut=8zB|@wM<+B(PC+f zNEPg~e>bMlr8fA&4MZvu@Kpg`Yf@V|su{nPj`}+B2(rcv%oBo64~ge34v5+Mk445q zhq!dTH#c%?TC<*v=@R8Fx_qN<>7~4(0arEB%9Gh*7>TbdEg;aU|8(x%c5_WQMq%zG z7ht%wC3>XW$RP5hqzD2oh-P#&M7SX}i=5-4+cEt;+rk>-V_4A((d)!9P?8ZOJmVc? z8D|?$0^1R4hs3_EN;t@f8zJvvCR2DK*`GP7{~CYkq4OZVx>^=t_|o-D%lbOm!P zl2h;p>x9QNT@l;g*8L9g`uqorvmIzQ1Bl3QJyD;9cU+HMQu}?VL8CEajxa;XzvT7P zlhPJMjHIX=MLNAp78HanRQ?+P4Wi1>N{=8R!oqg3ZH4+p657ua_y7lU=xS;GS5gl;Z&5^$9sfSkcOyfp=)_EoycYnVFq(cG9oN2wa5_b-*S%{ypQ6d`7rZn5NckC11>(l*zK9b?LFB#(V$I5!|U zS>QRPS5Kh5S=N-n${5N1g1cc)CJ+mv6q{2_>7^ODwKR_ZuHpP~s5=?=@bM|k$^GP{ zRx^#}3*&YLxJuo15}o9T0B%l`BZYr5^Xo0dBnx>Z%R+q7Kb)U&{kX z5nDgD&}XuHO4l73=WU`VVs@kQO|DDqXkUvhd6t`jy^>j{6n)oA^)KBy@n)IY9=R)) zo!YOKil;VF+rDZm6gy>YhtBm8r<)P>W{8a?z0LBRA^0cOYqe3wSTA6nrOY<@Jgw7ub+?p4@Ey7_=HBh()8@EM%1uCc2l-HZaW4!@$+@flL3>R;hGADF0 zPFlYE6_p<@`b)0wD2h8)aT^@8lBzYi{W(5$+Jb|TgM9YDy38a*=8(B!o?Qyvc*1-{ zi;H>e!I(}wQ(@#1oO6A0i5-lKJH}{33!NnWkdP&YDJCoH!h>L!a>(c5-f`M|X0S@x zNqiTDdpYTN6uVyBYG#^iHW&iMbheIBW2lJd;4P2n|<&d1Ur{25zIfl1Hj6w?QiDGd%Gd|r8~+zc2&GF z2jEdmPY(QqXWDMAr{HdYvcb!3+)9ZDo9nj7ZFTIq{VyNgcAvtfnMRsbwqKE=||_Ej~^{Rzt9ywMWQ6EqK&%R@n%nB@2Bq$|H;3* z+1gs*tiBgR7n1oPdYOq?m9*S5Lc6i&NJy_k1M((hBKJk69VOig&Id{A)p*WOiPS9t!B{mbEYC^ zG_6GzS+ZZc0aV+)9g8mUI3>mOS2~*$F4@IgUTjo5?PNAJJ>7WNvyEnSIokT8U)W&Y zVcKHqn)dt^)lnjHNA*N}qgpZdeTd-OJ3!MafSG(42b{(pHA@^s{JnLdGLtj6{3Pk? zTm&VjIU=~JpLnjoII=HhoDMr?w=6^tcVRAc5SxFPD?pe)0SZnXk;Lv(1U!BzPM8)F zTWbskcMPkgngM6jNpvF|3vg_6KOuAP$BUF3B~QlY6CFq@Ecu*Fw^O6#LpPgdYQH|k zzpyLu(tSfcvKpZ`2Z&l;Rv0P^QS~V_gkyq>Wu&gFy(Hyl(<3+3nh8>6#Q^7?tmG{K zH}62?z$o1mg*)KH7;44FKi~-{On$Y`aAV4Cg^sD`oaR1fmR3EBm=uxUt>_#3?mz@{ zTZR_Mv(9X!p6kxm@#JNGu8IQ4w)EY0LdIyeXPM4mwkWAZosD&@cbg@2r5~Si&MyC1 zV~Ax1mO5Y4d(Y`|Utu|vEi}E9y7L4I=d0o2j?KxL#cAjmBsd)4xdSu#>^=;_t(##9$ra)p~8MWNIy*6AdDs3Fq?TOyWg0dr)mkT{&Pz< zBtK!}zr(0)z~OV+N9e6J4k?UjMgz=W5)7tcurcNq3Wka66%f+Dhhb4A(2NAOI%!Xl z@%q|g&>MJ3Z|h8CdV}c+y%d>X2^!OQa}bsLjly}x+*4)*0y3dVcSNt{PV+A&Avu)5 z;SSvRs|a7sm~NTK=&2i2nmI{>g!9UXY*ngqZughZ1yp^F(H+v@O+iap*asIr;Xqy} z?(R424E0A`s?m0?UBrQ1^m;h1N5pY|?tEQ%ULSY%F5T?`B(rL@j9RhP6}^co_pI?E z_;;qW(@CN_Bwd$?vd}^#;GaDVk@Y4x)?SfGdopMgRWW%QF&-Tf`pYDk zYT?1&LRS=95FCr#gGYL~UQfQJfUS!oS-fj9W3nP-aLqJ65SQ~x( zhpCP@tYj3?FwY|qO48^OwIZJ*3H)6~PoHieCp!|uQrLMz>i%d};xLbDM6L8lDyCCn z9$a$R;P0ld%V~YneS#(A8xt}?tDnyxDZEicP)T_qj$Sp}rIJVxx3@OTVCmcv0HKCm zT1Pa%*x1M#IrY?Nu*Z9QCrt;8cBgY?hetA}Yb#3o-hTmJc3bt(HT*&Ds6Cl|; zd*`|d?I-cPs$^qG@^Qx7#f}LVQdPBeu^DUnl7a%$r4@_nNRO}Vf!o^hbCXlY(BRo? zVskzyy0?w=9&JHh0(s9mnO&h()LjmEy!^Fxb*Y=&BBc1q4t2m6YpbV{C{i*dH>tnfT5Gi{{ogTR{nE}2^psQ~ zU|oUrh7C6=NVN^6JO%~IycX1Q2G@>mI%zj^N3$Q_9w6163_J8=t&!9@vb$Wo1fwD#vYfR>N;Rn}GUHDT5f~~uicHn}qG$}mcTTvq zLrjHvh9g~uS_Qo9rG$Kbvf7LHWU~5W@)}}_`lpG&LJTU$ZHjSOOmwoj04X$GN`(@% zGM2~z#z-_>!3nr5#FRjC`Kqfh?13cfwu9ZIz%d2W7|iJdQC*#~6!T!F^68WyQbj6@ zVybD%iSC0a4fV*9!0kJs;w+9zFTZk~iCOCs)x{GUk?Du3;w}x;4%37VGmXJyq2{Tp zu*do+jX#PETBB$-7poe@q(#eUMLkg{dx+KYYiE>hv>kJBqpD1}f*2ID_ziZ6liDHd3Jq6l?!u&aFU~ zb`E6C{D9yh!zvX9{ZK+oD+Tl6qH;_~XX}SpKRa$DQ(m#k%N}h)a57l9=<*tN3n}7y z-YHQOT1Cw?@P<_m-P$xz!|butu}eL z8ysGZ-`bc%D-$P zY6%rf9bluI3Q@a5UEm9`#OvVXmFfy@MlGfOge;Co9O9CUVExHy(5*W&vl7wi0EO3m zOF7B3L98tj=C#KFQPL2-uaPD+<6-b7jp{(ghnMJyjr;9M&iDpdxtfOCc_5vGAj6NH zhWkvR4w4uPPCoiM9vLt$55A21wDQl(z=>hBGsP!k-YG4i;q&g2UQVL>OxEpS+h9M_ z=3P5yO}b+`sg=~2<98R+PAYqD6G#-dA;ht?;u5M9rGo4>5d{-Mi# z&fneh%Nw@|p$>GC_ds~NIhGf9T?gK_tGM~?#+_>s#yNCDe|41i6b1eHj0Cz;{wzal z6mKpKmHN0hFBj>?89{AoID)B>d?8P|E=Dv^@%J*u(EB}-hA(_A%J&7u3)y{ZZOY3(=Y$VS0wCfBdFg$ z?gB3s9hWL?I3YX&rJFo!XF8P%Lw|_=JeQ$5sbV*{5B^tMF{DQ?n3W%W{}Sr|Ny+{5 zuKizlV5ob$pt_@dk!PB)ccMUM3RvVL>Jg3GX;=)WgvOgo6GBnR=P$Z6U=1ux+pT5~ z4=tYu#}CObdNM{Bh995?%sqKCzLRmP+K&qg%${dhL=^M zT}?>iT=_1RUvd#&Kp!V9wrQ%gRTJBq!0x|iWV}#P?xdZw3=MlMoKC<$VxQ@H*$1-Z z$Ee82U(N#@v3L@Xj`KP3dU{Awu*1w6BqxUi`HV*rA(Ta;&1BZuVz4DyP_``3EuEbQ zFn28)Wx`{v560WpN(@vJ@mz%DpPkLQb1wB+lCkdEofvI#qY%PlQ>$5OY`AOksEMu- z7C^xtGRTQUfM{^{GrDnD%+}{1q`-~OEU?msHxQ4~My01SLkkP8Iwget2pQZ7@b~DV@N0_tuh)>xD zm+y1I?F_%L^2XlKXgCb(Se**X2s0Q_>%{?=S2EOm!>xG~%o^y@ShHmfdcuJgxF{s~ ze32f86KUa-#xe9!CN+2xA?>q>-x3bG z_SedA#(sNXxz9m0YmCVg*aLf`%IU|I_t-oBc?&;f1?Qz(kD$+A&6!OFA;$>X_thUU z%1&mB z*US1F*okV#VXjy0BqSAHyZ)^)^RQontJp&9h^#_$nVf}dd8>hL5<8pc*qeu#SSbM+* zAc1L5i04OV>OlU^-M~%6V_gg9b}@u+Da6{+2+5?w(6V8PfgyHvC^eGQO`4#!Nd*OnGFyX)CYiF-ws%3cQIw-q=9vMY9f7L1Ce>`zZy zy=|h)WGmrWlZduK+ABtP;R%|1#^{-!*)h4!+4Y)gY8>tD6}}8}09J4Q!7+4l1U6;M zkD2rrM*A;>wqKn(>{Tqv6lRysEUiJsmYZ;2E)|^py)z%u%#JkM*9Pu9mes~Y>XcmJ z!ALsFAt#Krm=A&@w}_HntBIrB9I>u;^N)-OsSi4eQxAn?p37SecFsDLv=xW`Y#(5* zIggx5XWT#6zzqzX(!|T4g@1A>j;h)R{X;68!zfDvHDjUCwzBc~H?8e>-as9L-cWUOmrE0ig2 ztHG@yEV9{B>W8oyXjvj@LXpJb7fz1@n*<5s7nH;?*X7a}SIk-`DGF3k%QOZa>Zx3S zy}Q#5#_ZWth1gWAHyYXt^?ERj)pNZARi}9IJ6H6**}2$Uk{Er$X#IV;f6xfK93HT} z&1qJ~cIbQD*IXitWE%b1p_*Zz*E*XSom-NEm(+fXBYq zl*30irDTXz&s9`Vb0c~YA8JvuA_VmS0~1IMw#K%u+?r!t&opSaZ)OC~=m%fXvgbGW zn{kmi4GqL?|3DobZis6RNs;*>+Oew^v=C=f%}diFHI9i}+LcrN`0Vbi-l6~frP$5w zD*h6+`-&$22VvM{=s72F>Ge+HHk=xEAq}Rv9Q^8(RK5IMJh)d$ZbP6-u+`Qxg_FOu ziK-_cg;m?=B%j1a?*zB;e1(2rhjWDZB9Rm=qL&rxB*#CY7QTQ{AD!Lt*jez3n*98) zOQO=l8LUnL$|zjvDxASW6O{p5mjU}uj-rQ$wu$Hazc_}yCQ-%v{SX@$KV0PhHrK`U zKP>T8T`X<>W2_vlq^%54K>UL5E-pq53k+26YC#L9#4uN=F9K#xLQPag#I4Q;g9X5_ zQ-S^&&fUF5)OQ(y!1uis=dxKBy1O?p>)|thx%B(U=6id)_+avPM5{nzYiSJ`2b zsptXhRz%8`$6p#RJvCV2CG?02Gly;J!pRM zF&%~*%13z=?1n4KM|m2xQjGA`kD{RDtX^bWW)Zvg!RqaE=~|*cj0qI$#&{jo17&xC zJb6c(cIA)poSP4Dx~I}@_Dz>8$CF=Fqx|PCOKZ*}HtmlgVb9O~-(`<9WMzcye;7T( zpQMNXc%qXPCglbMQ29t|wFD7&q}}<6L2G1K?GRxl>B0>T+{!>cHnc#gqIYxI>voS z3-d9-nV%4Rkvxc%sJ@XN%qomRU`7#6c;#62XF&PU>lM9lM;08gdk&q5n!~x^zH}){ zwk`$JM0zeO7A>rw8sqhpLZab9j{jt1S^W`w6lXcZ2^l!3^Y)YEXu+1nHH>Bk+atQC z^k*K^2ybg1SUDSBpo5$&x{U%22B_DiRuv0rObxNvAgA==D2PT=XD7QZ^#c9p-`|te zP!Jp%2&jtazj5+1`|+5!ck*QTA96~u|M=oR{)A=?OCKFowC^1g^2DyLId;iZOaHTk zxhh#0KrpJ55WtF5QaW`tNmP%V;jAe!o%^9gc1r;@X&4O}tQv=!9#WJDxT2U+O%!}n z;kI%@yw(0(p6{fGgM;B_nl-V>FOB78tNrBP_sOR7ET6sJ*X)BiP}OKAcFV2^IQOjq zB!VU7@E|R@2JgUrBax4sFqd3Int>qT=g6et6F;2Fs`TXq8Ed5xR$G_0n_hc=YE6r8 zeCL|;AqKg#SQn*EHz-2Z6FjQv!xKc|aXgMFXBoz*5)>_RiyC=T_i6_zZ*9>Bg^ofi z*WeK}%t9n%WwE!T#fUVJ6w>UG0?x-<8lOs`IXC!#UGNX_C=`IrULPR)@3tGUhe07n zVi=YtM+$oJ37N_9(@#tXTkFijBkJ^+E8)VOCX6UPPJ>=tekc8Dmi`dt@2@}P2^{(=IkwVd zbk3X9Id+t0){r`iS*F~B+QI z_d{Yk*LaoeJbNCCqO%xQfQuN%Y&pA}b;a~ac4gT7KetX5bc`5F;dTcV?#&LkNdWx?Zsdn?XMB>fQh>;=F&dTfXQhSS~eMO z5MK-rX%E@Z7$p_cL4bbJ5$JH{G9~r6AxXTH(&I32fap1@{OF%)&;1)MiDPzjZ>O$$ z{j9&u`^$G*$6@Iu4#>rSgK=kOgPS|2H3F69uYt`qE91fjhyj)KbIcI50WrkgxdB;` z0?E!=O2%$;98*`A8&*2eSLeQ_j-ktHla6I|TrM|P=o-H%e3Xbj7Ywb_?gA7IdSX_xrM>2-Brb_-Ae_b zF}JOE{RiDkk38w@$@IN*`bwv_a>vsp=W6Sh8WFS8=;p#N8eh}!riN1T9n#m)t_Bpa z+>WarP>taxVV#=ys7BV$Zz=fvd=$KMi@smeM=9vRpHvnOuU;%Ub#B!X|1)c zYR{e9)Yi=OS{qI`1hQ{~$A6lMBA5I~tuo=U)BP+fn(EJhzE=nd%tp*k=7?CxcX+po zPOm6t^`(1KJwo&nC`=$;L!Is?EUiJKoy1D9mhO}=Jpw8}&%65c%z$a}l^<0C=@U}(k`Bqi5Jkb+54^k@1V%aYh%^ z7O3-Y8je%2)L6MTf(g$WgUOz$M?qrKFq$(waJH{kJ79=1Ak?zO&J3ijwK)k(5Kkf5 ze@7=c&kZ^;h8u8tOboUlz|6%$x=B@4x1a?#L-TorJ{q9eV z7*jBr$#vq&g`TAXjm{pk1~>R+%9&;kmP|{V#by2WXS7Q&$*^@5Es+C(;W|$=VWmyz zD@J}D5$em=4A>DZu_G}k1iH1mq=M|i_`u!WI8Cpn`yGAXpF*Yb$kkTOUbB2Y%qQaM zggF@(*G6Mw8{DZgk~M*x54W4m{P1klyEE-{W>!2ZJAHDjNbDE2iOaBS78`K`HzE7W zj03{b+-5hEQc|O_q}>#m+qdG>S<-rg6kP^1MN-(k!`}*3Av(ew4y#ksOcl;9KOWAd z64WJ&nOb5e9-uL%$rmh&7oZ~rVM9?l2wa=$4#@9>NZr?i!f%$PybZf&7TT~Ybs3Vh z%(j4?WB)}8H<*v)4zI4-$g8=RmnIUu0+8>RkxvGxR5DP7u9C{mr9Sf&h*|x}3&L|U z$Spo`a_c+trNo7XAXk*u@0X-4sr}(o#)C`o!#u_Z%8DUf#PM@cbGlv&%L-L<< zgDyqLH%}y6g=-L36Fi!aG4qHS>W9$2n2(`|JWEc*DL+ibwM`+O58`2$j)8=>14KzM z;j@HEaXsK&K~S311@ZN%9ne!{_wPr)K2l0K8Qd|=toPm*wspyBE7tv^$9?7PScEq=;ug7uRvebwiBs!PiBNpq{&I z&V^m{O9u+uoCw{3kz>Hcby~-DOlM7JRaY>xM=Yoh#MxcVBF%1$0H=U?+nTb)avMyv z3`sq5vJo13_>uFb-LeakkC+mL4p2nh%Y2cSuzRCx|=C0T@6OeYE{c?Rckf(%>UXjt3UgzCf#i1Yi;d&F<-dNWNq={cLCRtvRm4YA2&QMCtJL$2 znn54MQEX_1jCPO%^VU$W#Di;clEc%JG)(;MEiLSf@V*MAI|pW8n;8E@pM^LlZZ3vG zl$R_YR6dfEVGoNJXQ=h<4G${YBZi6r?5->9=KlCaq>FI>10-;i#gUAk+#I|Kfpk$u zWs+(>G2Mj~YvnO1L4{2-*2?RjiHpV!Kd;4t9g2dttd!*03RD?q=J{<$0LmSdks+?^?8KeSC06Z!mj(Ss3#%gQ4l|Ycks<O)i(R9V! zBsEndd4(-#F;8}hrCE~pkoEE5qsltEC5m%K=GLA+Z;hF2O6P*P2^wVlg81NiZ)cv<&#TFGZ%ffvh{Rvb1kg&SwR#?XfEuARAs`4 zl4UlI2vG{jc0$%20~w>7Y*EC$xhmOsF6%8Xo#O-wp?cg>G3v3SX0a|-mk~T7G_dK$ zR~5G$z(lDJ4PUi$hNc)qidPt5peRMdh;T9zZITx`WW-|fF;JStX?(sf zy8MP})P2nATy5{{q&0qT_4CBxVo|4Wwa>P_(7El%@T7AD*|v!Zv@J}s0=^l8s!yTw zA$Wv6NW8#BPPle4kA@N53}gL|OiSsvdMBbae!VMVJ#DpyBl<<^Xk zeVL^X2vyKD8`Pq(X1deM7u1SU`NK^YI}F%bV!E$aH<|2Vjs{!qZ7aX-rnpTY6gMttj-$Zu5;1v+E>)vh0SV^d{ku zEHd(7ve2D(2fpkZGpNT)4#XFYuqqM&$CN;n=sE%T8nO#0fddf7Y9HKcWB~H6AdCkF zUnQI>53dTJ31JN@6>bH*VXmVcweHctw!NV}vypIEAkIseFn}7T722KDem06pjNq zRN_Mwb>+ZiVi9}?w-K65BFB?uUj!h6#V@2-LH^ds1fBlxAj%opxY)Fb)@+D7R(g}D zeWf%CJ|#&Jnd1$()f4E?A_S+Z(yL_FEvVi#uum?6gC!T)9XiZUZp8%DmIa71x6XOM zKYx-Z9NR-N9zGnt3F`2s+9))9X8gza`1*;;`l2q4kbN5C;?Stj<0cZ-g|P$$I;<6B zf{&IMQxV=>0ynU{nULB+PCGYnLYQf63Y_o^&*JA}RY2P%FTHyq|30QfLNK*JsTT_p zyEY`8PVsbQY5g&8jlJlQ^?E{78kus5ZQp0uobF9O(iPE>qFNY>!kL)9Zmwx_>0- ze$s~^8Qk;^pKh2=%ko?$`JTX@;a+Q#79%w9;dCuS=m{Q;MD@X>J)>mt{BU&PrI5i_ z+en`Hk!EvPJfRj3$$-_k(TiNO)_6co2LaKA>$FOMnencq4qjypth_M_V11pAiTg%h za(PGMd8Z!aTLAOh<<%p!`Urm0Hc3gaRqp-UZ__x~-kxY&qBY~31>AO~4fl@0=#!)U z`!|00h2sZ^fWhT%Fod!~X{Jz7MKf>AK#a zwSm#8_D4niMNSA(_}4tY!|`F(4~U)X%M<$N>+=c$$oo!Yh#pqOfPy}ViIO--1rtN` zy@#{_Hr3NDIJA;i2j+kTDLKv)bDs!r!~ruR3_B{UY{UZ7*szS4xJ@q{rz;n!9v;-t zBwZJ!9+(^9z|ezgiL-oae2Jo4q}7aKsB?Xe3=P2-{QdEe*y4bN1VrmVYh-N9r_b3Ltjz*RY@N%R!ols}fj zyqay1tH62@n6Kp%bTB{U>KSN~KF4e_jXNK0^RLV3m|4xb&>qkfMu?*?(|5vbQ{^u^ z$pnSCQMxeER(y_)XOdgUUUTl4Y9U%du3KphT?~$^Y2Xr*(2iz2Z*{ zN>_J{9)rmxY3NlK&eezjiB7a6L6XQzE#o@48oqCJ96BV$mw6TRsfcoZ;8Yn07YKx& z?u+@O3%&HboR^V^5?6)B39PRUQSpQ$`Js%QW>!KDnUT^gmSu2a$b^Yx=GrtdvXMmsqG+N2 zsniDv%vMQD9j)HpJ(DeyKA9wE3<~Wx)GW7$M{cMb_Y<_T%0TI>%)m(-$sT=A-XH@V z0yWS#F-_O#pf9wHKtJTF9&aTtD#}#QU9ok=!Ij^17J@xPu)JAbth*-x_zC{STSRCr z8E+pS@CN##t10tDSr(UN)Vfek2_wFgN6_fvYGZ_@Qj%M2=i6eTb`NY7l?*D>&aO7p zPQLnpCMjvwU?>QD&)O21fpr`S3}f*;z1%k5y!s0B0d*PT$)FaFt&Ufw3QC^)d~w}2 z1Wg-yTU8>Uq}Zf$3@_fo*nk6}LYdiA)FnGGY6uiCt^L#$+-?odSz=a_t;=VBpDT^g{0f4_Ax*2-OVSNgxv@LS9yDg;sN^3qP{@ac)yIR=ESCJ#${BfQyX-JM)YtKq&+Gsh&3|?UqH# z$QiPD;-0ejEw)KH5FOhZ3c^aF*g_awE)Slfe#4Z+a;ScExdG!Q0gNS=)CTIaCP!G4 zdifEz@*Z;5E2z?@pM_nr8`MS8qXpr^@*8M+tt(8{rw-H66UfmVX3C?a@b}TvW<{-?`*ZLfGxW7kIy-T%lnE4t8rHQT9KbY3B2sb^9pH5iTqz-qXbZ6Y+h7t|2QO49`cC%drN~0 zn#)ZEWs|dQTEq6)KT+PotLcx!yw9<_z-$~)7=`R^h%rLZ)BF0}WIROZ4H9`Wzsy+J zOa1z_o9$D-V(7}_;(TJNJ#D=E)fB^R|45yk%Iu{7RCm+HeBKvS;{iNH5A$*DxK6| zez+dZ_zh&DnF;^8jq}4JTK=I-4BhxP(|h?8OpZ4GxGh>`N8dDhzJLE0H_&|3W~`f^ zX}Q?XR`tIPJ#+mTlm9;huKy3`Q809J{vSZL%7zk(AR=F45Ur%zJmD_*A#$IIAV{Ep z;Fv6{X&x%A9m8@0tYLMxLMIMQ?*PW@K%^?PUd7|q?5*%(&KBY#nB-d>3m<^*B_<{ZTam!Jvw4@D7*9@}aTeswt z`An|-#A-GAnh?#BWPJa1#d7AFfQae$^3y)ZRY;{^Mh5(T7X z5w$>@MHH2vOuL34gj3^X;HX0b%3C@{IL&0biwSIc%NJP6h{3nQiI+tAop+{ajpCVGuuMEE*sE4Qv^@n8af} znIs5)PJ)U9*H6sj0<_5E0Eu`s%afTAc_c)J3-)Q5B1q2ls zi_17&tck5=xa_cuxKgiOeG5<-^SLe+44E zCFg_pf0j`2f5+C~e=MW_SU&1bh7Jz@V-=-JyP&9Ij`mstLP`KB>Wclu_JI2^NQ?MX zjfh_Wr357@B!>){4XSa{DH$n2&)=w`ia(bkDjGOAI1^>o!9Z}%&kch?uhZtRHxR5H zyW?)oT-5F^$4UR5%fqqruV?i0I{Pg4Tdx-i=wZ(c=;)2Q4IxH#@beaAJd$)&Qjgd( z{Sa)NhO{;zi_|mv&^1As)IP3D(kbJRE}>O&n}|#Jo_^e$)Le3#;?4gMcRZAoAl^sD zDd!L+L0*zRPKWd@>d-ksnlx3ihwv@o5PDoSp;n?M-bXg!VbJxr&q1g?*{waB3Rylj zvP>i_weW<41!ppBI{HkB(3WjHCXQ(OG%^%*s#S*>U1}ch>MB`4Em^h#Sy`k-$9j(J zQ-xURLgr95~wF_|!v zwW)ikQCdZPzXCJXvA0>BOAxAxDSsigiP*!zm-Ycx|H#JpQfcKN`Xno@V4f>yjTtRn zb*5iifNLQEPqH7BRs3d#igJaWYXigx&#Qvc{09??FyI5}gk$kabGnZk?62Xrf36{T zi<{Xk6ckCED_L;{7FkVAY)JV42!X03wKorTK`-#I&8+zxiJ&NNxai36fX9Y-o*6j! zjOgn`RQ|K&AaWFqNmG$)StX8L*($PRa|Tu;Dv3VllpKrplgOU!|HarhM@JrR zTgJ9++ewEV+qP{x>7--ZwrzEiif!9=$C%vr-pssv*Q_^pt*=)7>Yw_n>YQ(%efHkt zzl^9HrP*cNIt_m|E?_B=VMSl5YhkI{FDYHxP(lKXj?YirA2jk$q0xm2e^1YGqwk4> z12VPx4YiJ~ShLypXkZaghhW#F6~7B#A5*9SY}Pi1`TO%w(y85vS6F&zhd4%D`zsO%`M|J-JrP7SbF>736mfN@ZI zUDT7(X&7+|xib*v%kY?nJwg}0W+xLVkS?mbQDlKEbG0IuPAxvP5y(?AF?M!emRjcQ zl}=I%{H!8YCYH~~2s~YLTt$-6VSq?3WT*n;L>eM*QvqPK~mr}JMc+X z1)Tv0#*`NcyVM?9A)9Qip+^O5Ytjv|CIXZAL_Z{2LnROr@dC`rG;Rd8_}geBXzBWr zl&+DWOT07Nu2It>w(;%-`!QK_Seu|OyhRGw1$~jOF?Lk@twrbA;~4hy;4&0JJ;2%S z^LLH#Mq7}1!K81beib7auxlmQ{sNM1tQA_Nm!eN9mUfs?W~AEY$rM(Hd}YsFu4b!84$LnF$+3HZann3s*d8T z6j3l=%r3g<$vr$CxHcR5PrI!4CZ_~dvDH_%0+%Y?#ucIuEsgtjkdJyJP~dMW7bu}* z3hw1)%8sPjsmNTskxg>)V4-olq1bu*kWjq3pqhCNB_w)T^_%DtofL){#~ETxS0_4@ z3*1BJSz+w{!gMXI!fz{FkN2IxFqHVhwasw22Dsi7&0o1fota*p5ydzk+9dVH+lx5w zzKx9h~1?;`X9G-itXz2U+do8%* z>2Dj8pLI^6a^!^KGXhI{^`CjJgrn3YQQCkY@@RsTc=ccH7?w))-tY{9x|w6QhLlS8 zvgmy{U~VIt2Yu9SvbKi%*qKWQq5ch$-7`Fv>V>P_xH@v?VVr>f^F9y+@u|{7MYdyJ zn8uV&se^&ipr^S3Fn3gyz`7%m*@gZ=Y#6GJUvj6pfrJv$J@wbp2W}f0`Z=4PLgv`` zSx=%j)`i&+LjGA$V&zgbG@W;slGrd-9pCKM^;uIQ%xlnrkr2Qr)UU@V6i4|^Lw0db z!gd$59TfDT=W4Nce$yG}&>P8=N%>AphW9XLgpfO!E7VWS*sqgwlN#r+63G-x`A$!^ z^A%S>iYg#1{2u=jI~@N~b&u_pv?}oQFD#gEB)W_Kw~|odTTm|aKPU-Z?Couw8O0>^ zMdW4m<(>4u_uT&DQCUz!|NHgdbmhfr|7BfAmd+GYMwJvsuf-S*7L~fx5?)M$DGQ$$ zNVO6n%+fb&LXn*gq~+cE=%-oP)8wBw?F(JiphoyML%6tjEh7Y!8CKPRVLo-y$hf`r zHlB0;B;fxJy#wZ_G#i~1;qD+Qs3poOb}(KR!K{q{D#f)LvqQvW&i=kT1yt zuT1l3s1;#9cBl(}U2XxOM`vxL$JFhsia;HFXsBCQT>lT+y^qB5@mQ zl`J#P;PG)&BVpAwhV;fXSz;F!_gC%8oHTk$tL{CKhVC58>`*eHXfPWESv)9m5BGOpEPyL({ zn|J@~$!E8Ao1{wTxu0Wv5^N&NrFNH-a^z~wAQx^qNp1=5(@OHmzYCMeSIJ!c||RoPqh6?x7TE4U|Eukmhbw{ z+2SC_8XP<7YstZDG@sgC$agAcG4QGP+;|dSxVX{jM@8d|?RXgHksx-0g|=3j%@OW^ zOYqHhPCXh7+hNv*Pq@R_rbd48N*fn07tq-xpL4q)`F3orzM*tY`+FE)h= zAbs4R?1v2l1!vv`KFgK3ZfrZg{fhWyKIg5rDsT4@Nge@4072|hI<_BBxSEp3$eqmf zXN7396mGDM^MfV_im3i?4o)dn6kFb#7~XBTBXtwu-yG@7)fc@TpmP0_)rYM%#sXra zR)h!2pNrcVmD%IOoxI=fM?wVdmHi>ABS;&_myMp5@Bb!1qR^>UAxZ{+MF@1N>kR=e`8X6&>jTOAR+(NyD%UGuIY^ys=l! zKCEqpjQZ}N3lR2t$6o$eu=injpcS1qz|93{5eC;TIkcxS{PlId*|1VfS&GXnD&A-wFU6~yEhl{K%W z>#24r_cYO8$iE!qtJITbo7IpPhnZymaDLD|sy|qT0oVt2Y4)0-=&RO#(hDVCm%D<$ zt@LBg*XOY4X+_STy>*K+vR2L83aE(>2C@_0eS~WKA${oL4~6Xsjr>>K1FedYj{l8& zj^MvX2>(v`{ztw3uk!tm$A47w|3?W||Ie&$crXe$(l8jD^1VQuaGcgP44ZQhDt5ZS zz+dz+qe$Y3*xczrbKNa&wYs*=k=3^Hf7Td(Imrn;3V)U5d~S_{SP=b1Ltwq$bicm7 zdV=@=y5Erpdb`OCA%bAb0^~&y!xv*=WZvWG4M-cY7wm$--L{pHR0sloMWjLKGG$;b z*1N z#5K_DiA0P1+0`=2C4cRbR+H+hmspStQMTmaO_vE0k4`dQEtDI3=+D_FQ`&uuiSH>q z7VFrIcg{v`x4FDZvj1$3&TLsO$g`PnP#)k#iPGU1imp2h;<>1AT0U+siMJU=?VR5N zECd-21Bx`1Z@Qc!Yp87v0FO&`KdL2?6#?&$W$I? zC{8=pM%)POQL}55yFql4qFyX@nVCumhI3XBY0Mn4wkMyq;G*Pez#MX58dK^^PUzBL zFk=9tu3MMPLC4R|B}pFAlt zLW~yW?s756k1h~?@>R9Z;5U0qD_1W9lSDCm@P*$lv~AgPe8=^2lwZrQYUkiU_tswMeQuxK(q3>4UrQl zwVriSr<`LLDP^I>MjjD0MiarnwZlcnAX^_oLYJlO*%6r1-^k-Vi^e;SpocvEYHF4Q zl6}wYKTHiZ^Ilx@=dWVO3aj^I(5~jbS?sQE0S+ZI1K1M;>_m&Gf^Cbrr@AxB-WW}p zgdlulYno=%)nQ#wCS;&A7J;Ubh(!5Mhto=7Q;UuR%9#us6$%6qQ+wD72cl;xRkdp) zq z1Cazw6$bwHnum3Q`p^chv4I{UGDy`$%17JpXg+(8UK~kHGZ`ZG`_LLm#Qz2w(@iQ& zXoAeQOxg(H51s3qf%A!vo_f^4cf zp#g4D!>dkA`T+*vK54)g@1Y<-6(&Dn0KnrwfOu!MAe!!4{wO=Vr&7TKNHsYwPt~5H zTKt5>@zf1=fPtJ1H=h|)<@EPTD0yIW# z`-N=CuOX1|g~QCzIzY)Y??oAM^cekRYo>BqjKWBdhUA)vN}4O+nHamDkR`R-gSw|m@C%=9r*N>oC^zvZ-Vk z(3vb}96CzE87Ez}P+MmRkSDl09I5ZT4?3NaTc+Orp!W4bc2iSCG?Vv!)rstoCyQRDP9 z35NBjZhCwTH{ohHYNJi+3p%~C0;{eqO+}KiPeMtkA|q22Hfw}C8}UlP^qsHg1J?}c z`B+eD(d}chbzBTalSoQx8~|_Zde@W3ev86&&~5Pl^^?-})Is zo{e{~b-}n(y9%XeqO|TVTcZF@{p&go*4NA6b-PO76sM*2qzxQe{}id>S+3ifuSIrq zU6(Bk9H2Xz6d^kN*Hf;?Vj&a%uXp{L>lKXcY*Cvl`yFFnV@%e7SP2yQi4%%xm+so@e*4GWb#KMQ>Q0?*r{dRWxD551*# zkDt&=`%uPi#C70F)vv`7BU#~rC$U7(#Z&8E3TMx&^rS?%ZsY|oB%1Vl$MvZSB$Yi9( zq`T&$BsB2WGG^W|SD~JIe!fZL*^|6ta0dy;r*h2(WkV6}aaDsVFolsmquFBhOK#+m z!7C3yKg=-}(_#&}ZWK&oT@i(|eFSyHuBQpZz>3r}$;Im9$U7hk7=TR2^~san(h`hR zq0b7r$ra-AC3VtTh{ItblZ3O)zJ;~?wAh>pH`~oPpfRZ@Og#zJ(J*PwaCAIN9YiUO zy{WI7cGjV&oIH49t(a%85b4s|0oE++lZqZW2a*Kd%~=su8yZzV=anvVp4*>CZ^yA} z3&E)=xFW*qrA*4U4Wh6-ox$KP?=MyQzV~l!_WdBc${!b#?e=57*Gn@Ys*(%$9$DtwlrKAw>O%)J9 zMX31%6n16(g3%x%9-?4JN0o+(CLB?!{X61X+rDn}q3M?|hT{KAV2sOKUE4^`THs=0 za^imCf_0rx;Eyk4U5G9|1i^XQa3Hq~d?a_mh^59{e1Ag>dX-h3OOdK3jyzixbCDa~ z?g(E{=&#&i$XIbiLri}x?pDU`3E<@AphaPH*Y}yTUzL}hN z-8<_k7vg|ftAQ~lY}mq=a!!B>Z;qiv3-(dJ4G*63s}30Zw7o{?AHMZcp%2wgE6(Em z@SgzgW?Khwr1}^B0=M=uZISaZFE)&)^P)ZxnT!DT@VblU_X=HyBqL*AdNtMV0P7Kp z6{Z`sX*k|t3P9lTa&@D#;H&Op!%sivJ5sUW&4Rl&9`N1n>XX;&i@ZZA)t>6z-~e7X ztckD9^nlC}ma4DL9!jIOWCy)0t;AvqLVcEZd^HHmH}aerOVvs57E z+R!QH*EOQ?5rpIK?9LJFephbS2AcFDNVng-q%{3p6eBEamt?9`AgKkC4UPKDE&&65 zW8?|R#Rwsc@fCFLdAbHg)8DB9y%cOVy9h19S2{u0PPFzgt^IzDX+v}PJ7XQ*hv zs;nEu=NrN;JOJwktE~z0xnzWgIi)L*LVvf-J}9@-GjGG?a;SheGI*-Qe$cb&8kfAo zP`FsXfB8L!ZE%rfeny7>R0>^!Rd^Yx6{3*-ZT=~1?eET+P{q!3GaXQ~3g8alKS8Y~KFTL?Fn z8dQddPg9FuazLIY^JI_|1HhS)rze{5$6(@M#3h?34km;!RGob^qD;g zwKQ81CEbHIeB)a%@)Sm1+EK2DV9fX(E@`e~dU7(F4T;>-r}6x!BEzm53iTDn@U>_< zUvYyP?FvXaBg;j!s>`lEzwK3RPP+8APnjHr18(DO3ye|EVO|AV#L0eT1?I$_B3LFa z6D!Qrle2Cv85)WYTcf!q^*TM-K?d-cNVxmPw34Zj^U@?$rdZxX#wgilZvJi2K3CwW5Ybl$AV zvi(LqD27XilSFhipx2ZhXgZ7)x%>fw6NvZdcnz<18RXmN+kQ?u=zV)i}2@J z{s^(KSEBt>8;wrk=9_}waS1|hoRv<%Ti6cm#-3a))vhu($P<2>EIhYDN?BpT6GL-o zhkia`o*#R2tOP~z6>)}F>4$$qQuMSoO8HtG{q=m-iYA8P%U+>_e2pRIG z_`U)ivb4yP12ytG;Bb59i$Hdcs3G(SY!tm*x4F>hUbTEVA*|$J%`2%Fq$U9Yd5wv| z7>wRy;yqV^L+oZ>!Z483Ibn`kW}o^<0yBO{nis&G<4k78m1eeMj3J=-%BmL>OjXB5 z?UIk0%X(`_<^bugnP!8m3K) z!8-z}vp;adzE8`JjJ71{h4uL_A>zCbH7n_mKtSCn|4uJgaI&;>Q86^KG5yb8o~<74 z|BoC7J(k^WIK-d;B8deF#n7Kv&@dUmqewsJVu0Z!B|!GZ4`lBQjwW4>;K7nB(9f5w zte@7jq%k{IF{Be0np&DW7q2=upB`f^-m*EpQ7EuSV%?|PpXj!KeCIG+cfD_8>Vefk ze|^jM=5VsSHUgtC@wxJMiUu+2%j5wn-wBI_Ds#lA3Z&C z+<50HH+b9?l&p5^$r$(?7;&#>GkmY-gNzAwo~jb%jocp;A&IW9R%eiDsy$T=WA$(P0w@U_?@zIHGu;z5JIiB6+mB+*3d5?`BQ=H2&3xc0RMQf4=1K^IoWtf}!iWVg z5L>IiupqJJ2BwS;D+Ya2PPuHO5zLT-S(dgIPEU*HE;eZVDtM(7p{v`LD4tYNB&U+- zrj(M|P^bn!>*NwDPZIpV|GZ(|4?+&Zew4^t-yM^1KV!ff-20LPca1qT zxn~Cufk#P=W*9yxIb6!8D_U2DStGa?@4>jKUDg;cNVKns#?q@=QbDO-vl;R%Nl?T~ zPVf1hlb_M7D6_|bVw0MQ(mS_}hh>UF5oA^co-o#wbY#^ToYVU=K`)~@>!_0Y8WkO+8PpIOj8^ECXy`0CwAvZyQ@67 z>{)GDO=s8;U-5hk+)EPhGRgu6SFx%^3}O%6kb_@rsi1wHGzMh2)%sH=u*#9$icK5I zLWX;I;w438m;rh!7c#h_YQuIHh6==?d&1bmHVILj?I7HGK;V!2a$XED4>s4s8ibLTWvl?ACPk< ziW0?&zQ=|pldaR(#nUx0bIG--RVJwM`Y#X=;6p&l@w!*-g{*%b6D&?wA>wo2C|*TB z<09-&pE-I8_d2As`}YhB+V{;1w&$b8BTUc0^nZ*Dw#lT8tzl!8Yg*(M|tp!+Y}Qod^r z>))v3`vbPoZK|&1c9^R=c#93}%u}Q)m5N%qmEXy*?gL~%=y5swm;`Ky1rULRv= z>j3C{HMuuLSvfyQitCZ*Pg|}yHqB#xu_s8*6C9bcXI^3}x8qPOiTRrsn@0ONG2p(R zo7w)%NE|V@Z}%^$-qCSP-dKTIQg>Wb(juCaC*`7NU-ha?%gAIn-7>u#-8x{IW777r z`)+pWnvpgjo7t1qFz@fQkebgiFsbq6+Qkv}srxycLGk*CutMyvxm7eW+ zMv|2L`a2s5txGNv93EUn-FN}E zH#eA4lm~te!8cxA0mj`fQ&|DWRMghLdoqq-%d&%p)y0ka$W(I03j9#?wuMkS=;%r6 zHBuNz>qWwf$$W(9Nb7x2;Cs-?7*f-d$<$=`B1o#DHAd`tfP;1ba#dz3*4XN>q-*_Y zZb)-_pZG*4z=8Bagd&)a?K3YBBZB@3yNgb6e6fp@`xaH3TWx-L>N%pclqC+TUtl$l z?9uxfV$-_&8vEY(k}y@aHss7P*5ytmVn3e#s7C;)Gl?76sc>scsoUbMJBGp*g-@N; zC+oCkZXzKR3~weNdCiI|fLtkvIxJ6uU%me5`-`MQ*oRNj#vh2A2HEzB*A@`5^X?p= zO}Udn8^9yvAP#-S5Xd9tAbbzRnFi|41$h;Y*Y?Qba6WCM4DJxUzoL-Sre12y8g3i3 zBKAV-7gX$41-707(((w>;%3B?0B|!$SeG6++Qp&=EIDEL;&E`axXJ!raRLq?k=lk| zEteH)H9MUY+DWzM+wT=>`3;Xom7LIAOmM6~T7P+0J zmJayJGc`pQ@o}=XX+c@?^7vOv&8J2$-+5B_h609?>I{N2Q z0-dJba5(-Cx3f084I}|lt+_aEas!*t46Z3a452J>RdI87Jze=6jib=o-N{>DBN|Nc z43MlP3>jOzI2OzV6F|m1%`k2E8fd${Q)@IP3O;@I@8-90%`wlm=fzQ>|HqXu5aNy; z)>}QA2ul@slMalh>$Zs~9D zZ9SjmkhbCXnu&T!i9J4*h8iZLLb?kvqauf#Ts*0fC)cp&H6rA4vGCP9sf(ROgfCx; z>P^h%#U>`K!pdl8vuw!=K+~ffJr~B-7ApJ(q_iFt;orD9IoH_B`vlS=GI7qttBZc5 zXlJmqq7K;vCWOqYOi0M!U`yxd=5OoOoqY6K&^4n?9wm&uX2myGAL!6nuPO2*OPLhz zgU%zytb@)IJf9hrvEP^Q9bR2uU#v;(xN5GCtO%ED*p14p;rL_+YLjO8ejUEvI8Df` ztIKXCR_p_n;s9fj8f z0ifrZoz`}_Gnf+Y6+2oJ?!{ZkBu$U-Z{Uo2OB^`NGc}Vj^;x9F-#E!$U8W>7oKvs~ zja8Y%Cim>)vF5Rzr?gVuHxFZbyK%U^Lx2~_$cBvq0{C~||KhgDGGuUqh)<2=VZH&r z%r8)ke;3>)f%x=Glv10IXtR`2jhSLSxD{xclPL8C=~y%!C6-62+%14aO5gsxbfFl` z8B?+*8)X?AEK(XF>#NrqmDs3*7qs?LrRp{;)c{OpTYESij%j~~aYm>t#EA;T=lcwJV(P+yho%7U;W6W8>TJXT;?09$$RYH;2Sb@3+P1 zkK7?pxabV;5^XKsN;5wY*qwOjr|6H~S>N8^-ufx0@X!7U-adOy`t<^YO4s@~ncRxE zE1DX<`)gd|V1tp;xKF0&M{t4gQC7V4N-WN|20dwQEP29|huexl`$9`T-?tHaY)*CG z-RBa|mf<>Kt}SV9v*sam9MaU_TTvOVQX2y?URshIl{rp%tnnwCRF_4yp?$S#PfS>u z64I(zvZ)YkG?V3wIN_Wa!)RoNq4^#=%vrZ5BFaRfEjD)D-TA zwa<*;;lXqpW!XSE+~J3)@I~?E6x`;7wTBZ!XKSx6o$v{Er{yKX{)qD~TQ0kH?sHf5 ztuCky%=E5AV!5$$8D!;9P~{$tlKIN->P>iXWsEsAsrUBH?(KQRu!NVZZag(zQU82G z74-e1Pt^1*jpcG=Mvr(*9jRz#0BPokxHtACm~;74<0ZAL#p}g-ur%FN_7Wm(pQai2 zV5${j6A86+#kNLO)3Yw52`KjPWk z;TU1T?R*6?G-y5H)-aNMUYyUMp--G*U1wY#({Qwz0{|=WR?Yx0?o~&2Vt(bW19gspDGJWV4g@mkPEMFYb zcNPDvH%${m;!rq-JsO5vc$avNoPy-awg5^;NO{_v+PDv7zgI%QaoXi?n-1|&vak6* zWpm6uZJVG@Am47fS~9gMP+rWT-%W=H5-jOYPD$pfgz9bgRhRoT;+|@6jz6ckCBYGnXIKt+owcxPO?_En|gCE5GfNujQ-?NBjID*= zFqmE|zY;XMf=<5oQiD{uQzkI2?g?7=88al(bGc(C#_q#jC2hxzX5uovh$2vWGW%HG zoA}fPK=0R>On8lYB)gMuArM=j2UD!@czWt!{F(nb5j{Hn(!WcC}W}#c|UGgE>PROMB3gM(C1(_w3~XaESjjO4Iz0LngC9YP{lt)!W`?SLh zNvRJO5_HI?G2)>Ey@Fv-s7xTDNMd{40W@_l5YMM`!wP-{N4y$5U_Kie^;s0~zZFIu z%SGB8_65l}O??|19==`uaQ6Rtc?9hxb5b0LkNGJi1|=GXOe_|Rm6#{S93TmOOs*5Q zN5as&-!P+I5VltlWQ|h88k9?Kp*j_pra!C3zBn@xk>PH;StY|P0#{jt4Ii3kehx?c zq9m~s1XH4NiM-R#2T3alA9qum6(uv2~A_g#ezU4DoQ4wQaVXZ2xyM(9CnMxnp zSz)aiQg~!eaH!UPdh}zF=>cAg-r<$}#gpV9J!Ct<1gF}*Z-LIgRUu?oEjHk(IYieGxQrh% z)%_&&vAH$&%DH{w$3#zIw&&k|MKg=l&1bujA#SyQBDe}IvB-kizVB|c#5xY5Bp%%9 zT(WOv7OsYRIuXFSOrsZtLB7(@wgIDDx!p?s3?euCh6Fh)npP5g6ugzlz|7KfWqD@u z9cah>^V640sv%eHyvdFLK*p;_X5lA&ys)y-$y1 zK##azk925hc5*8(w|kJtJJk5VxiKDfm>KFhrFY0jIuG{y9rJ-cfayRR#5j#td7wIA zrU-Rg`X#V;gi)f1W9IX;&s~JjUsPOZt2bVD!0+|N*o82jVlFMr_!`-qaAuVMbwsIY zS#sMl%d%i)h%2ZuiS(CY?)eWR7%zS7Tl`^YkdZ zAtwOfiDM(nIdfW8L2xzlp)o-Fy$!t; zyG@t>dd9Idrt_U@coV`68!K*MGvO}*zV|y;^!W!D@)OQVq9OO2+3 z!Z>}rzdq`R0P;DrGDyIq$A(PvVE<`TI>wB;t&}KzJ5zzNuZJ-gmMmB*?HFBvVkOCW zf4M`D{pnKDDo3lUW#zBuz@M615xpAT)^vFKxEBZcx6RHh-Q7|HH>$S|x#@Btq-Le) zFq%a-k<*BPcd5iF&R)#7Gn{rcDj}&U`cK z+j3Zo81hE7oQKg07oo$yu(`}=osH7Yrf?rFD5d@j#;Jx5NwSmM`ooB#+JZ!`#?X>B ztKo=(B%L1ynW{Wh0(`pG<*Aj?$=$&_9s7FpR=w@x@ahO$1A)EMyHnKO>090z(lX+gv z_twu+Gbll#TD5L|cd}1Mr<@e*FZv~0!vcG@Y|P7MZf3_}4e~k)cDbmf%utT4p+6Vn z*svd-+}*5M4R*|Dlv&)_>;1fH?X{h?eX5DP34Z7m$E#j?mLm%5zBRp)IGGAl>)|CX zx-PDKk;xpL{xD4bT(X=@2?{c6_L1V{ZBz1?h{?MW3V01WwbD7XwjnS;?pLw1WH>D? z*62ir2HV^gDQ0UCeWSdbFUtkFdOAM1BdwKf{!0;cR=a*R*Wt)cAnW2O@48wsF3apl z`Du`frQpZ$q3XJY5$I%bf5<(VKU~%v8L+7BpuqAyRzV;)lv$02{3H)*y2=1A0}bqQ zn$Qo~xi{b{5YJG=@2nQboByV!8R*wd>p3Vr77Z5J%-Ekp2_sliV;ql3*yPSSsipp8~Xu8;Cmib?~83m~+o+-9qzaa0d=76E9u*^9CQ; zQT1v$9L49L8dy>ysawUL&!U>YC>^jULY;oVVVZ)ldv2|<6-sKkzcyLU2adt@{lX%a zvZz(?%Wp%{u0RY3M6W(kHeAR&n*C~%lf z@)Qeqc$QIEP=-{9m6@L}OEOJC+Z!padYcKcNh#Lo806#{;~q3OQ)H)#(*aJTNmJf8 zmaIdK2!79nouTbm(>tIrtEFbG&QktIQJuCjoke=2oCA&1h>8Zg8BJrz7>^>yk-Y{w zjD|VH^RFeTOdf-P;8J=$Spej5M)$7FLojgSa$!e%9nH%LA-A-FRXv5?fe@A}PT}`L9m;-LPh316 zt$_8P?P)U&{%1AG=zcyvVLQ^ur7BL+r7B@8r;cQWMUlLm`wu(8+2f)-eb#|=@y@N#16j4n5&bSs&xb{LIv!=l|tkTLH- z=PX4M8R}@hog=YaT`fGJ|8njt^cX^PkdhhjTS+_HE%T85Fqz*fT}UsAAE=j!@t%8u z_#?$%6Hx{EM|OVpRj_9~S-(f-Ie-tVs0Y@b7uA>L5|#yygvwG@^Y6_(XfWHYZrHc0Q@s6N_xHb7oHd@py- zf%73^4)}SoXd)esXeQPW-&>I(9?t&;!49J0g_v_9fCZR)7*#O>LB#-g8N=BX*~%jI zw`DS25sp(}e%J5k;_x2*%t99@(3sBA6yUMd!$wfrHMFb1JGP zW_+$o{%MCH8%c7#`6?!c$GXcyoOkji5&VxVt$(H?ZNhQz|;cdDylvN1H`Wy-+u zJX@tAzSN9yLEcFYF=Lo5*xKJ)m)Ot6-F(qed*Mp0!w!0*A6NqOm1uvj1gjwt4N<-% zD;`r+ya{K#+zM-oR@G1U$K~)SKQh=iOmM2#v`;hrI1vt-_VPB~`tE!qY!`GCZ2pFS z`aa!=Rz4!+`FZ}%lYUjLvk*clsz*dtNV^cW?U$Q~4=i@CXqMV0VDm7L$7xIyZcHp+ zl}vsa2_$#Gr$rc~z8s0|2^~-X7=R7o4yX9=-uTrr+Pt1t=3lpUpO^Gv? zikz848n?ze&!hA3?o|w4mI`qe`paHSoh_YaMx#>plMmsECLvzBw}2IsRPio2jeYDC zBRRm_%XCQ1`!dP&SGZ~pG!})L_t0o5Y6y=8$*+4Xv*SWIOaro>QM7KPc?V{*U6hbr zQ@HL(M+^qaWsVxV<1_TE%U;(u2={%huF+%fHt08p#+w}sX1LY}oDBvm$I`TkC*eA2 zHp8D){RH(mPvMa_b!{lIVVSpOZSb+4T^=jSA*H;9w@v1FIiwxtyv-g<^S_Q&y==(W zu<3kC>qB0{Zs0z%M=!dFrBU^aQdo6$#3FFeD)zOi3$TT#T6hb zL-ZW{f-=TRa4paYu&Wd8sH13n^Ofz(kP($vucNqsyLk|-richrlD9@XVUo^trO3p6-qJjZqwgnj#@(0Vwo2__fy%KnNL{MX$w3&SqydF zp)4&1y8wG~&jF7*rni1iLOp;KACM%0RYOxce{V>$aF5FAXC^n%4iv4+NpY^nHqyPoQIDfxpYMKyJjQq2 zX0Y$D>XidOx!<>>>LkY&a?MEXoZM6EHNxU$lcYf^Vnj9NNKLI5A|}3Ip!I zAa?b#+5*$-aq(H`FwsIxn$gQu)>krum5y}gidayGmoEmMA;5hN8;2yxk(X4h*3MQx-t_R5c){NaPK4XT z3Z=-HZ5;ZNm9uF*%D^~h!8wuD8y;cVJI8=ILk zyA3_0uX$9Lu4)%n+Z|ojIab;eGG>8lxRBRMy=^6<)f%LdnuZpr+-6~`1E*6JBVL`zblL+f_7$vPl{T{$j3z(lFksH==gpfW?*C3hdAKk+% z-bOLXl!mW8#MkpPaczJ7uk+(I`EK93wBv8;K3FMk%wFs6(*ob%?`v9_<@&C%G_-dO zo^apBhp&GgUXWit?7n{QLLeajTQtcxMZ)q8#gt49|L=@K-P#51FZ$O9WoEW79GNCm zhlK~VDJlwvEi8M91r$-GG?b*wZ=5Glb%z0yAaBoC} zs&r*bb1~w&^K1F`TQOfLp;wIUb@uA2YzlAOJfHd1m+SR4|L4TOUP8 z>j7bi9g2oG)CiLUNDDkp@A^dw6T>pPD+Ha;-+Ha}3m{-!ql9fA>tjt+Z1eKy)chgM8wh!VyxavPd1 z?_Hu&c&%a-7`==^(*AP0SQHNX82z2VU*SglJ>2+%|L{t*C@fGO8N=e8x0%}EWx%@d zg9Pt|-8UY3LJ~L00~aM;W@F-jyiv7L^ZnF~hNm&buF$Sv9hRmngLu-SHL{F8-cV+H zpgTrrX&FN3uX3`=;{RgooT4)ex2#SS7fogyjx#wOS+J{jwDMiI3 z;{k43H5DHFsj@raCha*Euq`2sHLTADWDpqW07(*FKKjBfnOmtjNU*e`>vMrnf!vs! zF)=kwlsN}iDX!7=^G>GHMB#kVNaJNWXT6*jGP^h7z~@<)XM_D-Y1nyi6NJ`u_6sr9 zWJCF5gEU?vxOh;LBC7~<67T|N+FT10Pin3U z(kzRt6-DzQxi_%AfRe2llLIt7XABdY2@2}Iz~63!K%xEas3y6P@8}cnAS5alyh-6Y z2wo+c(lcr;A=3~GawDrolz?0lF_j>vQ`FRu1)CykE$e{PX|BeG7afgkeeEQWBvt3h z`Go}NY|*T^{34Wkq=zPgxxawP<4XVeYO>~35K)3J$8g#yu4}*;)+>s#7`x6N(Kasw z3NJ~>6RI{p++WpxKKCjtqQ3@^D+6*=dsIWK@)umhNNtt-C_;h;<6|&YvV;cgSL5tJ zWtOg?+>idxesTR|>mCcCU^e0(k3`UgdYjaG1l_Z!vMQJ0LhiPJL z@j;qmg3Cg>diLluJm60JVr;1NOQ`gj5oC$i+=rJc4h@DNN%bKI%om0g6HwBD2joMi zgcX)tSvCZc`NV(!Br%%#J9BzAIP8jj7~n5va$ z#=Ewp+)>%#S)^$$(^=Vr(I+p#&NjT3G~$TjoK%Y~mK%+e3}9-Ic=Lbmt|e-U!-TRa z94YBf(ON&fPhBGnt4MT&ck4)KqxI(xtCObBYtdO6u3tNjwr@PVI`dQZzSabE>e+$| zP3f~e%O5<3YP(%A0CypS_F6KG2w1&zJ=`}Q7ny-1dsQ*VmZuVP4LnK8&LBI9duk1V z!|g6>#oTCfnx*#Gk_fp~Iju7)>qZn4Ju~~R`?U?o96Nt~at><8eM=3rRngA4tKurY zebNMXkg%w(p?9uldGaIO!9aSYBFqFCiZp$z-%t}MZ z6Pc;>_@Nd6b$ZfeNtegG_LaZcozIN>6Is@fZSX7GS1g_d!fV^a4wvYes_vQX5}7In zS-M5EVxS`rJUdts$Py{dgXZvm{}Pe}L7gH=M}rD<|=&)KJ6oL4gkS7nfE*sa)&UXdpRGlZ18! zYTq#d3W0_Ym@W~DctcnwO1g}NuFVNW*qZfxFQEdg3sM-+aF@w5(}dB64J%N{ep8&` ziYa}J?VqkX=eQRTnlPBR@h5BYAW`5zv-?=VY%lICuU{SP*nKzm$-6hjaG~z4v_BxiyvdU+7wST?t{w0rxK3`iDWW|c zZ5e=ncBvrf*#qfOW<0wSk^56Ae$}0pX&f(>`?mEYKK8+v2DmgP_&Q_@aVudlmZ9}l zrsdGn@u)AlXQsA0Z(7cysiPLO!*!Bo?CR~V` z&C^h8rk53G@n>rkK^XO#WiP5b5~Pa>|?*&hFmX3vx!O1u-x(W z2fg^#y!J*DwPHMu(I;rzV11)ea=j=@m4SB^sr_R0HZ_J3Rec$UD$>XX{qw^ z598j;g$4T;l^)BaCnv1hia6#lM>o9oEhP%-Z0o}DXbkoxNkm`av88)t$yrdRPcXt2 z@u8=uSO-$%$E+1!H?E=Q#%VOkBR2aw5e~S&4h9|X;DJgOj=RlXEeeMZMo-2INza+H zyByx~>7_#a(HY<*YIuqx>1L2<1J1F^>`-SOnURDzW-WqiS-t#%4Y&FY3A~EQ{&Bh~ zybEsfG+m$M4!`*Ginii_O-zTOg6FjEv#gi;7F`naECm2tjHS)=iM)ROxp4NT}r7p$MQh0 zgjqRYV4huG+g_)`$%MS#Mk|Vn!I#RuDc;VWwCZ~!OOvcO*ngMx8loTK4_~sr8u8mV z_J28({GSfvKaOIes-_)q3FEIybE1l+Asiu82G-Z@j?_*;1McAP8v_gL0K_S=wYnr# zy-{QNc~y-xmIiVhDe*+5w1Qc@LfYcVMvO|4{gC@qgRIwy5$9a0%Yn=nfUHf{A^Mf17Ot4FofhIZd#t~Fh(tm z+~6>yjFaSY1MF3LAo2DYsC%lY%z4z)ouqrv;N{?p9N?Dy`fUpc0999hj^O!% z?~+kF?H)YznWOR049(S-KaWeFD;i^Q**_@%hK3u)o z%9t$7q$#I0OCQxL*~6{L`p=5KX#Kk11O+xg}#Xm`Z9IOA^j4 zc3OKMn~38eR99J)n!s=kaRErEzNwcPjB}-!{xYoxSe1l7Pq~5dr;rStdyq9l-&W#u zVrjUdPiu|U)CG0PmDb#I-9GcuouhUXewMcq8_N`XKHf~bqNwu{>(p^n08J|A_D2)b zp=s{|Y26#m)HNx(3Q{$RspfvWzQ<2IT^)R$)O4!-y-rp-8q$$%A3P?@^p_iMQAs>> z!veh!htRh#HfaUjjk-FN7i|(%lBWnXieym_HKnh`b?kK_C~q7a40shfs8?>0&8e{K zGA?Db!raV8-N}oaWwNljZmXOgyOCC$eJWL>mW=DhB8_GfJyWW26wPomjJsJcnI`y2 z5fzu?;X8&x(0N__9OCn4(OIHb@;8;4=swEJAy7)*NNetTSZ82L;gMyS#Nd2fez;I1a}rJ5Yd;`}!B4dRbD4SSlP0Qm5pQzmIIDW)e*!vjJOiHGIk zmb~5I7RsGV!o9r66Kz)TBommH?`v3;Cmi{D$L^?ny=#;%yT1dZ!@Gy5o3$ucqC_Dj z{^UbXQ*v^RUa%#o9D*Xx^N!7C>L@yDZz$h<#TO5Lv6QYAQTh6&l;1(Rly0cr)5;pf zb)c4|SqxI#H{=;2E&a4i?M;>2!?#MFX(-R>9?B(z+(f8b2!^lFSkt0eV2jRAWmGqF zc0CAL>-Ab)wmOF@=7m8aL}l-w>eXpw7Wy5P8#Un<$E&L0yQd2d%z-SknAf@DOLOWN zmS@d8Gm~gsHvkcX+Jz#f=F7a&UmM|fIL%?g)!NjnNoFRyDHl|l?trQNl*#Kg_s0+qlW%a*iVI=TOQrdxHt%2eVzSy7t3C**-mVC$->yV<=9ycxFb#0Ls};G>_x z&op!`oL;_%4*HFVkQZ`T+4MaG2aZr=KPDP8d*Cz{qhPaI1M4o|GtcD6&H1RMD|_G3 zpetsIN2txx#Uu-1=Wby>$m^q@dNG2&!&QoI<=9Bt0?3;n#$A2VJw43?rrm>rXI-v$ z@smqjwm@*YWF9Cfig9vJV)c~jj9P(r63SxyWdhaaKcl`hs=Lhda4jZ6T_*y2Dl*)s zT&DMbE8Lkb5pqk9Q<%M7S00X~5bAvwQ{tP{7Le4Cq1ZS969>nl zBVrBg2NzCz-NNf#iz_walsQm|GLV<#{7OLFFp9K^`-4{$M{!^+#8uR)C^2HIXj*Gt zK*8rPB`fIm6$ll}PQgNlj|nw9{E#kNfE9peO-9R%yjx8%umpUwDo`-c8OaW_GrlE# z;0uo_z@jumzf@(iPvZ0YmMl6Z714kA8!)*$dvu zpVg0&wI}=wfLEjRDfU;^4IFP*`5nA^hp0WuXBYlGcYbf3wb z?d3xVu+kMq`VL#k{mtJjVKJ9yTWC?eBu^LW5_X?Bn@fT=pu{OUe!eeXNye$!(V zR!kCZz=b#YCA5-R*%d1Xk6pS}k89f?5+|dIb)LEpi4fQ65A(}*-zp6HJIzhuV~vHX zoI>6(lV7O46kA}RTh}C>D&WEI|I{G_*2F&Fe(h=eCi(V_?O#d>6 zSqJtaOrzsiL}ccIW@-|>vk(G?v(&VqE0|ER#*pabfk~`1G}Fj1#uVm)u-4=>NM^7F zpRHHs%yA}+b+=w0?-LzQ8y=S&pX!&bN2hm=U4Q4l!a-y5(H^&9_0I>hE$&PSJZHWV z(qHb7{`LwCzq!!{bT#O?z~-uG-ro-}2}OwIccZypWKXUy`!0OhbU6w27EH$$Lp{ncSsuULi}0$hI}&X8|qo z+=$XCP2C@@bPP0FvHrMJhd^&u@;9@_@mX&dvBLl(8?i%ZLeY8|Qh+S!r5)qj9M8?A z7Go9%iQ2|W{AIMUW9hP<52FipmNT%_@T6jIP=-?3$~IOT3v4bLp`U4`wjwE6ztM6X zp$;0GhoYs7Df1*elRcHtc&CaX!Ev`LUEJwN%hZQE)$tKo-h(sIndwGo6jcoJ5oy07`#hP>6Czhpfa*qfQseO7@AF05I=tEkvOngfi=~lIm^@PEh;#+%DKD;*8&|>m@_E;5JkIyHLHzrq-J2};i-oo zdkUnsIpqfMVMLScm3A)cz=%Isr?BTsD8r{@VkQC?OGRnpb95=}GJcBzzK>3_nl+K) zAg*7E?~pU*XDJ?;?)lfYC)SAw9f-4_O&MqGD%^OJaUosV+iVE>2gm=abFqsuYWDDo zDNYx$Bp-+yEd1r(e^wNt7OVb3&F`CARP~4eWb@71v--0dI-(XVBFkCIn_Qnv_Ns6a zVe%Vv2v}7N9my3V{=~jQ{o-PVJNi&^)Ee1_!7^XUb~(84Aj2!dTuhH4H&eur_Id}Q zOU@yHLLrfF@2Y8_*L|{)<^ZHcl&3eg`myVN4?1Hu-T9T5I^k!5X=8K@e%?ugjqtUs z9GVrSlgX3loav3DVm^K95Q$FE`MYLy6HoJIbJNS54=;=IBse2ojM2KKus%Rk|Iw*H zYw)~4jLnqMo-Pq;gN%&DIU03%#hZVOWcZ6_r*r>VJ-g|PtNaIUTEJnj(mv6IpK0%{ zqR^?1jr;aKE71cieiJ{%MCdg2v5<#pVcmfO;sRToyv?z_Fp4BY=VLgD?dr!b+2B4A z%fmT|_{I`1RdHOyCdD^r#UKhb`w=mB3E+xn6!CE%*u-5n2WlJ@$9kEd$yOAKWz3@y zce=83RW{`ycu;ndci>4o(ZboaPT37D`KP4@Z{Hg*oXlFF!>)sTGfDg@S{;>|(j^9zlyGI!&VHexe)`>D8iKb3SW9fc0kolfFyq z#BdKEVTBP7ui-|7yL2MhnmY(_Wp~j8=6+y46YrxlPPtj8(01 zxmEpv$kz@3T3p$E+GM~dGLmob$f{LcWo{xc`CxMb@@_y)%%-+bu?hB&!KVI(*Hm2} z>`JVSR03zy$2q^Yq5dskZZF6vn1;(ZnWoJ+dT=Zgg}HYi{AK2Y^->;hL(pefrvMz5 z4E3SuJb%HwL(_UCx_}09Ur!976a%4b3}J1SL=>#%!1?x!|w%I zt8ho^EXhA?1BxBu!9sU1p&9&aizjfTZZUUYOPxjYxx&Gg_^CiM{hPC&^aI*y#pLy{i1RaPrcA8@Pg+PmxIlD($~bt^f9k7G9xO z*HvOoB^C}Zvz3)`xCFsT^_bJ9lEl*@oB264k3E%V%Y-jJC^ebaDZ_2SwU?A`rf9lg z8(x7~sX4S@@A;MaQ-|^PrV@~;3+-FhElTF%u~1LcG)0i_O57jJwpwM43(e9h6=RKhf={m=-Duoz{xdu0|6glotg zI*zC{-6~$*HVy;WqIgKSpmKl@XrU?a9!|lh3A)f5zdn9_SJ_rH_~}RFy-`NXnH6rf z%&D8j(1OrJVfkHcW8!V3wm~FC${FNY&Pv?WOznnu2bx65poR6vTX^SXed}d~ttMxV z+M_U$iy`8VvJxRVSn}UIl7w^h`wTp1UvvkC56{_pEkln4U0OzTn^H zRB3dCZpYk|Q@LS%NWlw7NQcwAHHX;e#jRAo*=jO_k=76-mO)_G;s(QXHzT2}8M7D7a(R>SqYA zLz|to-*fHbp!12f1;?R?`!)ofaUI(a$Cy*+4)sWO>sK~zr0Xk5bw}F)FYe<=R;sM- z@z_^VvAoQkjv3)sNhTG;DfUWPAn)%B0=nYv|hKB4a3$u50A~BCJbv>7lWltogR^ojXRnx zT_0g^Ja0Hxs5GdNv}5=mPpHQ8vLO0MZ8xZ7`24EY1X3F8ci5`jL`e7o7WM&oJ-7lcr~&_mK|7kf1rHc(BKM}IfNXSX7OtuiTz+m|C8GicJa2f(HXKA+evjBeeG2MtwiF)56yWb6!>S>} ztf9S8e0MjLJ5V)U)JjZ|{K0+<1)=hG8dZ1As>dekoR`bWg!<}sL#46u5LCBsjyL#o z{coig<`6fKB^!MiUPy>L@`k?YCGyDOH|eBCM{_BzOw3fuW9`Z^d(xe?vUmI}W>zkk zwye;yqFsR==9L2J9pJVPIMezj;q2QHfUR>HGHOICUH3WAJv-u2p<|+05Xrqw}9YL#%#qTZ{^F|Df_?YT= zi-YrN2=oBH$D!j3gSAunlvN#7=cW8EhLI7;{q1^0^PB}uw&!}?=G{r*&X`4O&xqUY zAszNh_oa_T$#1|Ph_LiFwsx~?S+{qUC~KEZ5xFRgWD-5@KsYc-+%t) z=H}kve)o2d(53djiM{pqvYGYvYT&M?lTKSPbX!MUZI0D&R5XN*-!%uz)*0nj+-6Xl z!55W8XlUXNKm3Le0h2Cl->sTL(m5Lc$s#p$$33&P-TG4Wy=K)g1#)_Ld|$mC;PV?1 z(=BowQ#Q?UaroYC@ta2khLJ*!hJ@cME5BE8PN%3G9nyR_*uw{f-)qhH2Y?9<;(Yor ze<`awo3P~=Qqpa6MAr}7(u05_T@9-D!ex3D-0P}j<$#V~+$Pm6FWt_8OkM*kLR6X%3@2Vs%^r|eaeFu~mZ}g{8`J?~K87fw*zz)t}XrR@`F@$ z`UeHk?W{kXdt~=s1yKQKAgmWSgNJu5JM}X)D@~)-^7oE{n$iVDcDij{)kS*QqFu%m zUh5{JR&i4gaIMazA~|25YSOb!_X4oth6QORiBJXGD;AI%2%p~_tLb7v^8}=sT{!j7 z+eE2|S_a!oHb}Hhn#r|Y>`nMUQaNpt!6j$cv3_FM)+E<{<15DU=8x|h5BpH9kkRdt z5gEY+tW$o+j)fs64rx&O3Xk3UUVGg#zg@BX+&;fI=D?AajN!&l_*|<+uz;MXkxBwc z?elRwuxM3C8uQ#cWJ=%+FYG5vF`$u%zR7zg-jFDcYRMw{d^|j!&}rH|#;umy787JM z6OrAvRZK^h=0F>i!Hwo)ba>isduA48@pSbJPi=#3 zQZj^&A2gNMjA8D59WwhQ$G+1Qf}e0c3$8UZ{FuC`2aWEvs7m39&|cFN%_e1nFDeJb zf!7!j(8dd=P)LJ6S^3Yv_H%p<);?ipnEe&DzPP)Z0#>VyhBX^fB(rP;|h%U z9riUIs{HCo|7(EO7dh+SQMn@G|Ivq5(pFs)LF$05GmbETGB*>R6Oa%yGDO0&UQG!& z1T_f|_>cjJmT2$5?_iscyKW0`8L1QI>={{aNJ&-1sux ztvjakEVxt4h|L|A<@C`UJq`x*TXsj=51j%J<6z# zl4HEcG42vb^C<8nc!3-+n<$S$d>M^(fKH`}MYp(^{6oPRmrTiHi{f(}vGq*!@|T+J zFb)Q+jwUCx4a@$CS$7|3GNHFyO+mj2W$aQ(s2ro#1+)lEIdPzV0~>YUwLHqFfE$%J zH8;jUwNmjXQT~b2V|khU!>L+x=~@WTwXkwWzYmd;P-hP_NaB_94K5z9Do0609y$NH zn@8h*9R|KWK3``x0DUT>MrL#Mc>fCOPfquza-WH6G>?3;Hwq~!F5|e4(f%(ii*-ct zv^&KsSb8_lpQly#Zqk3w3iQY<`m@yT7MkFkpY&7?G+QD7z-a0Uy@g)P&iZSfMH=ow zMAA_-)*AC2pcTWoZi^SJ?Dc#vs|!lN#CC?OsIqsg{?5l&@FZfq1JgG*JzJ6zFk@eD4yxD+XIMRAUow&Wn&R&DL(yCGzlu( zVu))UfU-uoJH53tvd5>r4rC^$IDj+0m{!On=#q zsM^Re=h1g(>ZK{zf4fy_T9aAN7wlV5ufthQX5x*wbTZ}q4d4(`{+5 zWzE*{ba3>r$%wxM+`e6+j0zQW{_~e@W=#?UX501_<95t;T9whN&n$0?)G$GT$)~qY zk;yj3g3!9SD4kyNqBb;7ZgVT>! zW`#={+L;)KgA)OupmtWqU?y<_mJ^#|nq`BsFUGjVJF}L7@zp(jG2rl@X{47VwzS{A zFk;`nFk=7OW&i(A_16ZO?th+a6>C*YRV42!knpp?9~DIf*5i^uRUtMy>$%?y7QfN_ z^cFOvXIG8YCyHvuRys;v)Ia>Pe#!7Y3i^oq2+JPQh8QrA;~j2hX1X7ywlcZC9CdZ^ zesc?{ivV!P-tc6>#3B(=82+ed%+i+$IbuAl#qZAxKxZ^6ATBT_A0B@G&IfZ=5s;yl z4Rxa+kVU|3xq_B$c&tjcgaJaAQ8!}8V!L9Jt3#7|nWj?~LmKA_*HKs1mgHtb0s3Bf zz%afKUtH$ythrXL(qO%@m(+3LM!M9pr^Ib-NYRx@No!q6Yh`6zCmy6H?aFhTt$KHL zudQ8=O=G!q>Y3P9q$AywIKatQUU~c&C4xD&DGt-SQ)f6|UNnIr(&h&kv(D?IU&Kk$ zcbl^R#BWbHNP}=)e0Z2*zM8jWC0W?3RcI#GotQY`1!=vGk_5GN z@C+v;f(s9A%sk>^X{5sZvLdo$7gmwou~TjCupX+kupDZev&Tr>bD?wm8lk)esqZBj zdLSnq6Vo~3dv_^0kCE=4o?Q+Br#Em;V`6EmLyaSURB$>k(K96-7spP@qyl(hc>78M z{QL-$P~QVk!OPVYubCD}-t+W8(_uQhsi3O^C$PY~cG)DlG`}Jz!X+nCK-|Oi1?Jy3 zs-!P|{c&b$m|}gRDpIYs)BoEBMyTXRKTE>>Ub z1EosL@z0x{R2Ey!6CG=rQ>Ifw*^nBde64IpPI+N7TWe$)4l}INz?-=6!X2bXJ0x}A zPtB>Ab8j}5BkGk0ZO0OFG@H30Gq7FsZ@@VjhlniPxluFtL4@wV1=4s`@d@VOUY{Ut zVN>SC%#la~@EWNl04PQf z#Y_^zpVZmmcaTmRk0x3B2E*oc$Z^|xaFmd*u+Gn?Uu2K2s~7|ry~DkXH}PWz$^i)X z(^Cqbk#}^5PX`9%MCYxLEYvRiJSu3#QQ?G;X4s?1eQ(5{=H+thM} z(*K6MkKSh&$c|=q3fP$d)f$r>zzoUg$GEkJ4N&MurGBd&Ov7~(dI$H0+LBXRjO}aY z?RCZbCoG{vNT(*jmyfmx_W!C9{%bACRJK+HilTUvLaT>ReMe#LRI;q3tp-#!K@`d% z@q-eQgIk45rUWcZ*!*exexH1AdW=5(>)-JCQzyEoCmr!D#4&o-yyN4WOGms^ z-k+e|^g3jAXiq@)NOK(%WVheJmBYAw)Q4{F{k!hGJc~6kKS9FZZvqBnUmQcV58YlE ze2puv>qf_z;Q7p-IecworXzKkD{7NRAGQ1`kh%;xROl&@Sbimg82~SXP{d4VL?;u& z&t^Rgs@8~4M*n zT&(Rq-K{N5gmMave(}CUVXUAZCZ#s5-$y7?LWcX2P3(#(KbK%*C#)7JipBRkz!1T) zN}PcG!5Sp6a~B|(o@3AZIn;F4Q6LweMCRyw*0D>7cmOcFo5*w@JcrIuh2ScaQ4T&T zF0Bhovua~q*J>rt)RRY+Z+b|}v|%m`CaizkCm@4CB}>6N_oh7i1%5Dk*ni-s5F@_3 zDI=2vGUi+YEtuU$R$qLeWh(j0_vclo<&U;j)ggXGU#O{{WeCRLzM78?aTwIY+eH58 z5u37hzttuKVMPbi6&O>PvKHg_ zFhaAT5Ehgv%%L#qifFp!`+oy53_Ng->~w})TPh7vwk*|_V*7%+w@r`|7|nw?`|p|h zY3l*Y*hCsAdt<(VgZYtMOCC;}M}GKMf3)!@kx> zDaPUxs^Bzb_99X9+MVX=pRGNVaSoFG40)4;0MN=|;peggGOYIsbDp3Q!8nGx^eiP)vv+S9<FI;MN9<`z>A}RqY&wApKt;>y#&^jTm+u4Qi*@b^ByI+0WB~>! zEdKm(^6F%v!OT^$HYwDG`|b*;?mX1D-$(Kqnjaq!L$tB^#OA$5`6^?yDwdUF8&qN& zg2XJC*1OsCgSJo@yP;Ohvbnm+fUV(1l&r%ZL%e=WqgMpAEaAk5)Bf&pd_`8UFf(Q( zHmI@uiJM9x5lHe_D_exT`TN;0ttb4d!xOxlP@l#Dj*2;SRSkDIob?~`7gc|?Gu)V{ zHe>j)e@I3YCFT*4U7A8+ z)R9GH&57H z!XO6lJxY)t@qLcqbV>pAxdzCJ4k<}}5n<}>5qee7cWxxX;HdHi`{#{*!l;#MapA_O ze0svd8VK@6DDAOZ3>+1dZevK^CK^RQOwB@`DjC6w&uJ#7;}~f=)hMkT$PBFx#b=Z1 z>P5U4?4(+&p!^MnoG|W{7HN-dMrILV+`ZQ90?n=0Xwm=FT(p;0cgR>5kS(&#`US1L z5DS)=vD1EU4=Hwuh-2J^xE+~RM-L`k zFOvI__W;1qc(Ohs;+IZGn1We*A!gz^3J%b8X;Ruw5_2@bxBWYc6Ep*R=Mre2Gv-u0 zl?qVHx5PHGD($0x2fqwy20-60G6b5gOAL<1@t7`_2zf4rKX(gWhd6V$VOEA|>JHkS zF#>1dfqa?@wN%Dj9I}xW#w4ok@Cx##2zBk`Qfm&V74oF2rG-nD;C&4xtT#^&R9MUz z*v_gRnbr^@To$Xe9O}H5qdMp8bH;tMUwwsNKX5;yInC9ExPp4h6GZ=bRB!tS;oZas z!M|7ZbQk$m1kuRF2yzLa0RMntCACY)ghy%bN71*IAHDdB7h9PP)im9%%hyyA1mnPy zy0CZ(=?H!oQeQerdp7cr68mfls+L!}4u^o`fzfL16s)Rt5-FSk2E~p=GDhjQt~DuM z8(hOmfpbx)HVPk05Y*4nbR&i9u46sz7Guso>@y1K<~yJjY-ZBA@(RWeJRQ-LH6|8f zu17z8G~YR766!F+tkYns^VZt3-wuX%#oMq5RA|tzcVfrY{GweUZNWxg$R`OsX}g|x zUfjsRrdT%aiYMQLyty+yOfWKcOt#^Q{+YU;U=4lx!O?YQ#L04L+00XZNxi^-jhe+4 z&^nY1Ut8a+&DBLVfwyR{lRh0mB6V}38xFJ3*y|{tQ5!42UgEPiT$$cDSUefhyrDA` zrBi6NnN+PH+R;=13Mf2M|LdoBtCM>}T8TT8Ji|8c1NDd{4bmc<@7d`)RKOipZC3Om z(Gsci%IHom?*C1V?u0pRoKr;a0|`D+_-jbK zV9zY~#v^QpVj?bK^@lJ=l!sdszm%L`d_!8V&hev%BRJr`a&J5$aNSNeMLxNfFHuC5DC3APDX@Q5T5 zPbA>)lkNBVW$S~}NfY3zb|R0cPBoFTWqID|k@pi9_G9jmvOfMP=y{?stk3;RN=keM zWl;Yw)$QNIX$8&n9rzs_^xgl_Zi-aWbW~JE`Rg*pA&zBWE&&W6M*B`6tpS4RS4*N5 z7O2+)n+Qm$<&hSQPa};ffOA_aMdaLc&M2j$=Om)bls6T^*2i{x5M}2*j{oF;U*s(= zE`0PI*+2JMTzPA&Xng$pv8C$+S_4T23S~h4``e@Ib!_s`cXw>KZ6t&-tL12-?+ttA zd?H3W@_bP*@^WTWNiXbd6?!b1F8PHyKOU4N8&A->)b@}^`)*r}8TTgdMt+fLv2BxlDBK6+6{dB#}4 zr(GiPjOtewu|aW>m=-^8uHc#`{Ekky6%yjLfnrmaxLuu=&!t_)f_t z@ELzQq-a7+A+kltnLs(D4X77;?hsRY%zlUfls_tDs;pUZ%Qt%FaSJnVa@hGWv5f;; zQ*MPTloOOr%YFw9LJpA$Xp2y&1zqcL8AY-jA~1+O`|&~UO$ly`hRwLr_T%!4^c)eQ z&yQfD12Ynv0k5&~tXBI>-GJqZLXT^DQ+`tbtA2e@fi-&0c*#Jm;kS5Z-=1MI3 zxIy@ok!N_dQng#MA0qGQ&sF(csd3S@h0%56UDWjA_1*CSV>5?}1sKEwNKHi1yx85e z*ah!>S`6(1o|C}ryZ)muPKfN+YuCcq3p2oIfil5FvwVM3z5_cwpHjnR)7iu z9I!{!x#b2QX^k%h;;5?*kq#nPMY*OJ@E^0>&QxHq<}*0h9-l@g$LljO#b&dOyvTa8 z?2LJ0nKH@HvrY=3b^OuDfX=1Jx#WmbPo~OK%`Rm9yL%2_Y8Ubm?{Khge-J^exYfgm zPJ%)4w_3ki>Pgb?7A{4d$z?EOwd>nRDj=IpDM+8lO2O{%w4*Ch*l|Wpr33bCy^4ZK zxmr#z@kSl3br7vYu?PI|SoqNlC~7z2SPuX_UixJywIWmLO63Du)d#2!79FllrR|qq zb#_cH|GgAi?-yE5Yd$7CPk*X3)`#SD+G^NiDSB{r zS-^_u8UcQwT?I7PB3|8=v=FO}bn#i^twU?gMvGO1A1f9yWE$ zJxx|ry5E%EzH57mS>xTTexxk*ka34+*O~Jg`tcQS(b*yE?s9krqSxej9hKT*bv;^M zc)fE}rkFVWG}ZI(jAFHnHq?O_yl&|n6m;rv5}4a;l;In@&DisDj-=x0k6Jmi;T8Lp z3q`99oCzJbh_F@F;^vo?h=GPOr+9PIefRU)Y_LoHTf#x4FBg6{$J{NqRN#b&=ko#idYMZ zOyHRSxkN%!j8+WA0v6myk1`EY2)Yow!j4#!{Z}h}t0Z{Wz2s-;WBeZbT&i~-6A8QX z{G%k-9AA--z{zDg5q~!(8Pio;b939&W&K-cYuD$;1c&yV&q^#=zQlX8aKmMJuP^Li41{I;ZGl3>^hVlaFUV?L&}b zy=1zZ#0Yoj2T6_G9Bc6qYSOtEt#Mk7+KCJd%>}EW8kM`I%l@z^{lQ&J4Shf9A!244 zR3{oH>r_pk@zEX2>m_6f-q$psm9Ph0hM3S1x&6jdB-xJ9Ta}BZbJ<0vmI^VC^jgWLY z!-(-%y5Mh5d@3=4zzhMt!HO#{Xe{ZIf*hAkoSgELQkS~mLEK++^Yxdy|JiDDnqPg0 z*l{_$EI->X6zZJpk4XwOA-;tt1TBeUi6^%b>V=7$Os8I-z#3>ywM*16Xp!+jcz zCsfZ!NaR(AKh~D&Ueo01gVGbE-f86wMXHMr4f%S|V;MkH<`8}GtDOix)B;o^c6C$$ zINna2pKR-TEas50NHe%k;yAI>r77{`dqPvIj|e-s_F$PG^&;{85)}UcH4cY$XQ6{E z$?Tv~UyyenboUW9{gl!7KJ(JA@wc~mFw5V2pF zb(3^<5#eOA$r*UOyslWz*O?I5P?3;F2r=%{hR4}CuUQW>#Im-S`Dxhsi|%}vtM0e( zYxnG}9?3JL%D(Mf%N`QXpK0~RvYzC-b@RdAVPgs@1)RPp_OZMKmflM_tdM@4+ViU4 zK^j1b5^hVNDiYu~x@ox2ZIB}UYOJG8xeNZnyg;X!-vt!RKgHe8ZSs|wLOQV6L3%bs z0lST1n4%P0B&@W6_&9#)E{q=5W=F2P5Gz#ymFT0-zFJLL4M>o37j$@G+Y~Wij8eso==`)b zm;{xbC#5(29H7e!wV6QR#xFULm?O6$i7Z*`MDvsaRe{hY@M$_d_^uz294*{Hy)=zW z$p|7vvb2;zIK=*pFDc1})!Q)}=`u#H=a6~#%TFD&*y{IxiZozRYRWbGVh~DyRm=a) z@AKcquDFepw7wm&u#J<$e+b`91?{h(A{3r_t~OX>@O~Ar((Ke z{sqwkgj1-coCk+eU=$g*5cEZW5A|aE>r^gaG*lw{t49I>Bybhuddi@5o~hHR^6(v? zqnKy<$T*D42lV%O3i!Lr;TSN98uhW!n)-ip0Q;`O8P7X5OpkG%R5$*frL=hqgNePUsv#g?0jc3T+zJjRKrMWJ`J_(T5ou)%w9@a&un> z-B~0F<@X0sIQhDn!9)UPQ8CH-QU8by%bEFENbjbQc#hv%CKsN0f=zXb@>dDV$kSm0 zg_-)Y?=lH}!WksYG4_V_0<{LY8P#_-rmlXaH$S+@_BPa+CK6ZZBaw`5kj0&~gu$;5 zg06o-KvjM@K*aVL3o}JhFn*bo23TIbf2Qs{_W$9jwUMn@LoJsNG_u1HY=}Z)WRUE5 zGZR2yn|b=DCX{`eDlp@V(;a~HzfTbVr$6@}m$gh)OFJb~3~w2isjP`Zl(=qzWMUfd zf^=zOYYET*$=_mWjk!u_=D>!rkwfB@8jkeKtis$zbksGZG_%S)rf2_DQhr#a zA&fF*)Aq>_&V1#evtvA;=c(uRt*op_ips!|eXgq)+N%Ti&8Lsa&ev>PZ7@43oe({m zpfY**weA{jQ9tc9Unmk59!kN*?i61^z&<^0kRd+Zu28_*WpXC?iW16KpbGKq4is*8 zftaX~n_N(E8K4`I5E~cm1b~4Xxy|4yr@}`Ji-!g-dhkH>eICSD^yu(#|G{3}t+zWK z^IkhjlRd9TiZe?4cv5{JPkZ0;kDjKWN5*>W#$rH_vsdc7n`Z5PgLKrx!1V$u@)Ct5hQ$Xf92_^v1f}j zn)!G(4Hr_C_WAwEI=k@ZJN(6`>8Ai=!a#S3^mF91@0b51l~~DGgaiB7L`!&y(vBvf zJ`<2!-y>f>EGq3i-B>3xi&00$60k7xoukZjOcAqI%f}iHGj--tYqJ)$>=Z+uV+TW1 z#Pms&8ShrXrRu;jLwJ8LQV9HM3`^1>oq5@WE{(i|4$^1!)2yj(_exAmsLGL4#y{jv#&RfMkMW|@%lxp=7`Ly!Ws(XkVyE~U|VR>iW~pY82G z3}-dQdGO6C&*T~-?+fWHH!>AWHw+DFW&oT@)qKG|%9~soQw}2Q5v@twS_du|qC)#M zdsk_bb7;17Q%Ek8-Mwcp&>zj=!j}Cy$uzdg8$yEC!b4d-3|xC@&&0eWzFw>SXy^1Z z5doo7dexy*VfmTMM%#|0ywNs5-R^|YOtDlq7}<1oTCA)dbZJlV0@K>HZfGEx{b)aL zyJ`ck>8`ta8# zcV`VOD?0VoU2bU| zP0X0K9x5#!ZQ4Zl)_6_@rwe-l!;w-cZ$C2N4cl%^dvAgTjAjRdedPj{cw7ECe*QVY zh+Vst#tv9L*Z2+rl_TMhsvuVuIYn8@$6M`B8aRHV(z!8~`JML+2ybbUOM*<7cM1YB z2bHC4y2?ST!1YKF@KMso(-LV*HC9}svx0Qu^8Yw{$7su8!W_Za)fIe+&#Yt5K3V@9aYB`*3wagr%ByDK+S`1so9=V|8% zmF9EgAA{)b`p$P$cFwF|JUxUrOJz4hEfOb}BQ!OsD7xUp6eY1Ybj~TLkUU*@qy5A$Edq8o0b)%JG)=ufcfi=!d92+@Im_WE#eNag4l6cGU}mL(C&Na4B0h= z44LoTAX`2{qMT*wu58|6De?par@)^57!kNLxc**w1W}h~P-To5q9IZ5jyfMkTU4H0 zNs!cy)WzzL8YPGhb2DUo&t)>eXio%~ige|Wi2&f>1i{|xxQroDFP0lgy`aV;9$cBq z^+uOKk1?>*2bPdYpbqXS)c*!nPyXfDD%c!&^nq;IOE};I%5t#h);;K@v;RPp=Nb0i zeJR*7<3G)VyFS0_2tDVZx(p{N8x3qy_c8fLJqPznhMeGHBE*wGt`njoF^<$d)GI0e zDi?7#4b+_s$c#12B?ZbN-cIi-y&QFULbftCq_uZaeH$)3xLn%*Ag#1|{t&bJ8Z-ubN?f`zD?m%cT|BZ|?3XPLB0BJ;yDgnyG(DIT|dPXZ6IL1J2!L2JnLtofeI744p zN4FweSrOwy$DS5FeF#b^Y1HGC$@OzlH~fJ|$Ti2<3x}j`rk-9Jb~K@KPeJk(0d)uh zbwowBS4C`eMf73i70x@jq$f`ngBYGd4blZZDmK3erXx(i56K(l7Qw#6Q}RC_PD!D4 z0s4T4i&TD<5*Fku<@Adi?8`?`YlS8V(ZD@%RXip)XYHu->^=83y{>`p{Yus(?cPX2 zkr3=9B!;&%(^(T?JH(|84uQH@S_F7w|9;8Reo0ZfpO5^8#@Op%_<*%nbORr0M)o-d z^EoFUKu`4%f)_^YE`BPnE=d<2X##Ti?P_?o86l+)p^Y&H>mzi34^p4(Bt6>FaJ^k9 zs2=ZbcYogqyb-9aUyx|3xq|t50|_d|pf$A8C7qIVN`b6Z3ep4ngOn)oS9wB5z#k1_ zWerI|aI8^0e0ofVT`zo9SihRnV6ln2;Yya0n10MHOK`PiTVkE$%A;&gze#9{v zahbtM($NkNwNMHV;?knMxvbc8j)))jwzQz?w%ifU9uS5KrZW)N65pPSeR30BXHY)| zV~V8!_d=KS6`1>(xUxA@3&qZ_qo&U zt2g5$#jH^^J+A`* zgbP@K8J6{}byd{J4W#oBXE^Qb9syQ5KcUW!+7F8zB6TKkg(zS?|p(A1obbVhFGRKD8to z_<~qkSXT605XToFg;tw>UYO{<|LOA1-nHz^UrAs=PflMp2*I_f+rN z6=!3MnRL3uBT&%n{NZXaYJ7gKPx(?NwxigqD(MIUD6^%gs)o0{t@rV`; zF&Av5VEUG!{9-joSwIC1Ztsu5jiU6MDYe3eP}oXe>kU_j7y_!Tk0&EDq7xLRVENxT zZJr<^T%t{rf%H)@LpdmdrZ#tsRhZ#IE0M&dhcg=rmF5_zA;o=zg&W6gH3YcO{aXw0 zqQszF=!*2vyU?%3X2UH00DK$N2U9yjJZM24vP8jL}v)G9I}AcDoGDc&UC^_MNWC92mirY(Zw&r=JV7)7f7VrPXdASjYc-E zI%2L)`9;$q$-WoYq%^u+FS56u!|G2H#~C=^9rGl(&yYwX3$rIf8Ui|M@_mcvPm6Am4j2ZNC9TTSnz#OovEJ6XL;o(8xcMk+DKWtORI{Z-d4*Go~% z#b324i-&k8OR>8L&Z?-4&CVK-!yN>pbj!I*ue~T|?#sjx_wlR8J@zB|hC6@E29!o( z{C5m9{sq%}s!5mdazLfUH68T=S#WRaxcJ}Ho`bY@CZeoDJF4?+a{0<1hu!B7{Kuh`lr_w@Z(w$ zwTo6QDvMWGn-?|9ujI(OUp;Sg#-RKuC)%;`dd_xevGIP}xz+-%#n!ne2vtNfk3)`w zqodxZgHwABvskHqWt$kIr^(0NFAW_Ll6!e zOXDKiPYf*);w0E-z~{agIk8<2G5J)DJ~2FTgQFQuG4XV*gQp3bo_VhWC!x3n!s#y6 zlXG-&v|-%jKs*D32_*3700{;z0O?>dm4jl6lVnd}nScEhuGek=bujDOgJC* zp=Agcc~|4q11v+xAerpc71r3+5zB6A{EQxwuxWNWH5hg1O^^}W)O9u%LloK}y+{~o zIEc!!AI3?yl$3dL$(VdK>1cBBq3sL;6v>j!7)4o-qWd5`<=J-c8gNxZGUbQj2Efz3)PY;N4v@L0@4QX7EYywkhw^jTBM60b~{@Uuwaw!l_m5Kt8_R9(qO@S&sV zT%~iQvo>@(d9R%m`{afMQz@x04pLBcPn4RRa5L>7o5PF~Gbt(8lQxZ1UyMW~BYPB? zY{(k9r$?-KBTGnbH@EL-NzA5+P3Pk#q-Z#msU*{=XI4Rqq%2fcSY9Q;j0AjM=btu# z5Y>L&bTP$~N@jR)Tpeg=IPti-h43Cm=}2V8-LAfIV2R18JS8~n5C}a{k24^zpMImPgmnElWZR>s))r-_AEF46kKY6 zJ2BU~dE3(KzE%@(0X|VycFSnVZ}Zyjw@g3LAY;uzY|>Z29y6efLZr}cr?9 zOU}QyETexCyDeWkf4!XE>Id&0;``Ds9hPszA3SMgm;(sl9N2(Y>O}*xjM>06HSko%w!xUVd)OJiKZ~}cZFIi$6pEK_m zzcY_m1`Y`&F};H{1p(HUg>OsXRF5$?!k1vP2c;!1g9I0|D3xWfacCww-p-e51 zp(TB5B2C2aqPg#HE^wO;M)@<#3v%o1ZU+AmBY4mJTmX7y90h9eGn9mb<2WJFy^EeL7_ zS7aYIkRIGMv%~r8-&Oxa#RQL_~q$3el(0>MR?&x z@qCy7@hX@ZM0J)sG6Wa8@P1Yc00>H`d0leF3V*0r`@zNFMAFx?^?+j-!s?AmJ1`fu z1iPg2uIyzS+%`&O=F{wZ0-8}iL6a~!PmH8PyW$b*?bw{hHdcWF3z|H;B#V;E$|d-H^#!_)MHlYk?VbOhejI| zYxg{t)Y>)a_0>TCOKfcc*1vQ6s>`-a7u70smnJHyj@4uP+ZE|d2d_ynfdix}pbPUv zn^3L3$vsgG?X9Zh2Q$J9W5SXrkuOi&SkBlXjcQO2{KQV^?seo8&&!{W1iNCbn#58TK=l#3O*KbC*CpON83>djqp%rrU`CrX%eR!|S? z`mjCb^nE35GwKqfb{}-MEv?GqRl~_X^p0q_h~xt*1r(T6xM_3 zqCd@6_s_!F|CVt7AI;YP@?QSibYx0V%4UHV)+>XCq%RgW7Zf}(=9d__(>!t>xh&xC zLQy$3U;Eu=I*j@x1C^(Cau#n`kXT+(%-!i2{z-PeJiO|~!+s-U6RzvO9tIvhUvE!X zya3Pkw6)~}SXfu*waF#AM{z+$xq7-;ct2*JZSmO?z3Y%?URQzscpSTZx+0jQ>+Z+o z-&g@_&RTmdnAm{$x~_|LU3o}>)lRgImE16ij_=yIiAdyUsxkvyBI}xABjT_1DCBcU z-Io%3DFofbS#>9F)2ES>0B7P&Q?Zqb9gt|{+$sd@WjPnxOxb2m#D0yXX-(4oq;tSpqGz^>i1 z2)lI>TiS0RGEebxc#xOwcUH|#Z@JZ6JO6?m1Y^(U=-=DQeRoKq&~(kV3^|nX{7rf> zSayEpX0iL@hCmEX9L|2|=!Q-NkO2vUV&5yfD547OvZGGp-qBx-<79F5?Z5Yxsj69I zK_Sti4i07&s|@y+W89Eye2DbKOz7$in^ho5D2*DZ&_XBf6|pI+C^d{(W*<|?VbPZe zipIYeWq6lrJdBQ&3!{_K9M!L2Nr*B4si8G+!XTYEUM@vW!}}Ac3`PVN4G;$ot(9My zaSl8!hxs0DEJh?f%oNlUYUNw5PMlnSw?PpRABjaaI}d+&vN1e^jvRhO$&SLf^s-f; zi)%p|a;hS} z{|ES=1i_T@jsk)T;up0TXrL1Aqsk4)7cXQVEH4ETQXD8eRH#4SZ1_ZduYSEAGlu#5 z;`BovO;-0)nWN`k8-ozNllqQh@h1ZN!gt;`?_U>Y-AhuMoB6THw&%=_=gjN(>8q~S z&m0|ZfY~5VP&iEpecV8DLJK?4l_AJ*wD?shx&gd)val^g2MK+%u&7Z>#YrnV1N|#N zJC;B@$;I95$TZmg)WoEBK1m=ttU&-EQd6=G<}5>H8pKI|e%)E;tQjP8;p(WV$dY0Z zBt>yO8G0KO%`ImJ_h!>K!vg+;NI6H$1!slov(xIN7NidbHZQfjZ@%@>6ZoL~EZ6i2 z;^Rkui?#b#|1;w7>Le*m8fp_N0hcL@>I>Bdp_R$hXeOI9=?IYBc>ceW_S`vG%#UnA z6&=&XZfo&Iof=~#juaKLUTgJKEi!#5Rui#&^gJfyizQSWm{iBcQYQR4Q}poCCs14& zb664|Q@J}@jiehxS$_x{edCy%Lj38qdg$O=bCDfUs%LLy|zbmEErr$Ncp*;5EZy}xGv}_!kWMn4*`B`P{pnHcQ=1ViIQEA;Uy@TBYGeVL+=&czLG6rBhV=+<%ToWNKYY*M>aiV znK=2BVUHPCT`OlB1ggQI@>TIGHXy<_8h%{+v~@PiY_-6>=CFLwv{DYcK+l5twyCtT zw!p`-OelOz%9<64j9g4g`cpcj)|xM5di+BWb*_+SzJsMxMmcIN+;+@X+2Bkk*uHf_ znx?H)$kKj<6i-?WyIAM|LLSo5QSCqpIvJYiz+Ka)Pm?^2I@G_2QAx}_`0|+2t36qd zaEm-?3TwXwV2rnqR>KfF83;OEE6if@(pc8)+?66J*ql4rWYD6c>~Z<5I~cZAiA)ei zei3j!m~Nawd2rj}HvdM7=;B>UT=%tc$NF*t^uBw_D%yh3&SVAWskk!9V&$spM8Fbt zePrJ;p0ZOx8bP4jVJ|n}8OX8r2^x0R0qYxkf;XSHu=$GS60s`kr2{mRftQBh5A06S zeTI93Bj%bew5v%>acs~91$q50P@;BV(`S*0xkd9^LQJT?0JSUih~laf4$_fpif$L5 zqCN9nGf%C_z9E=Yz*}xqBcTj=G=AbC74SXCvR@WRs?<1Io*hur9b9pFxM9d#hi_b= znG5X!w4z6bv+8*&Yhv*knwE#MuJAqQ#rivvc1&qq~1=l8v69pBAg)lvcg*0@e4`4t5UtXU$mpPSqU#?!d+oYzh zZa3dR!Fij1{tBsH(vj_W9{W`mrR=3^lEd|WdH>hu+6%hp^YZ}V*T`*JB$uno@Gp4! zbUQXd{n#c$SQS?~!UANnIE>Nngrll2Q$%ZkVgl=ggwM2jXS4?t8ry6sQ-fxgcbgi;C(?@&v2j3WKF ziqqu7S@CE(r0BP3OLk5U!}g3U+V)Na*>+Z2nNsOjwd^juf~QHc8zmX-9@72MPm5Si z+EEzgY!_`$#0YVAU|-%8HDaccXT{0XNF_`jl3C27@X~5*OQ?OyJDVv3ae;Fv5a%3H)j8+$kx@T}$}tm6$9H}(UNkgD9M zq;luGFbt1AU{Q(4^7IP~Zxrn^PLsW$=8&?+U<2jQ%WR#-!MYham!fP;9IQTgmWY=g zXw%4$IhoHhK!*RmX(3sY&v2T!Ut@a&ZV}9y21wjp!$;NT?c!7nSPCY8T@MMhn_z$Q z>L)eX@~>h8n#irFNoLeLk{lJ2){!Zy2RN&n1A8KTThU;SrJC`?wJ?XErc0_qZH^3` zyTw=iRIW2kD@Z43|B@e@WKer-NY7xzQekpvWM9U1(^Fr1La@UFuhlMEPzp^K=h|WE ziZf5ij{jWgg7a{4H*3gwEif}LE`f@b9Y_#Tk9ABZi4QS*5MCWuquj4%8YW&}v`*`flQxGc-k<}Vv;RbM-HsQJx=p0B@> z&`+LtP38%;E_Rha@Y+^2B*vHzQN;*jG8X`s*-to)%daz&w1*pxirWZ{iC0^RC6tL@ z=Ny^;LMjZNWq7Yp2*Jvy&P(VrFJT?p{c_5J7}XTiQkkcR5Kj3gO9%^VbmWSR!x|G~ zot60zYr?Oivp0p5_By4YuDG~7j%L1F0{`x*{zTYtEuu4t27qQ8$C2Fw$9Q(SgjgNea=IXf61Un zmT#mJ*?m^Po56xlWsKL?y9Es#kvdXjM;@#;1RX-hAvTM>74me^rAFbL+`JLbHqp*y zveJ*Nf%>nY0=EKbiD8{RKnFhf6&wGUuq#wIsW&ZW4PaS*OY>5tc%$u2!aunb#>5T> z+sMtByPvJ;h;V{fL!L*+qN@00qw6yiNRI>1hUq|X(26v;$J951h2=a{Eus9KW7}(SPdNm(q<55T9%?Ln01(o(aG^vZ`t{vmq^e=|T2r8BE4AWJl zKCWx`MY0yp5DzQtRy!^WbG;oU$To-S!63*0x&Si?GXLU{BzQ)4Yqqah`MAdI;OwOX zaz~>X75v8h*~dx>x@IHSDIJ#+coISmr}7!eO5v;9Ll89Tpn zlDD{GO-oN-CUS&A^d+$QYp|t4RbsqcsarqO7*bfHIQAy8sBX@{FeCA z%6W4_2qw#U#`k~e=w(qRey9Hk9NB+HKmT^4=f8fce^%-!r7Z^pCB*M7;;9j5vJF{s zGgxp%Ndv3$eGo*ySmye8;vy)~aS`{7&Ek!<%jHX84Z)GUJ~Sa5*Eu_3yJ5Rv6zxnn zJ;z0tZ`5zV+f6A+`rnw&#@DZ{Cm+)zTrST)yW*b!y%f9PZ+7^h3EwMG6pQjoPGdrN5&1GGw$CPiAIX9w9rv9LA0n8j2*zwMJ>=10m5;&iz&HlH0gu zSW+S{{PTJaT^TjW@1?YvHOCdn+Af^-DmRRS?kLlkYYbi2nl2#y4uXwZNk(a^O^B&! zUlyE$HeHONBo5J=l;mh`loA-@Dz%P}fwWl)H|5{9oC3^aOeUPE&KN5Xm8T@D?M9d? znKt08>-W%&?cu4IGuVCm6wXRjK-`NC-4nM!$CG|6)--~ zRqRj~AVG+77~7Pj&Wp*)Hzk)UqS9+O+p6kU9icYB^Kj20Yb=n-lB0dhL9AcGS`o4+bRGe9cl6&lyrBH^8V z=%rX6mXiREzEbGxIIe_K1sZEN)_* z@sVp-=bjyn2UhYX;@>B?EOBNIp&n!$vr?ZhRY4EmJZb6hlAd5(?i*W?bZ4tgSqPPU zsg~Jkx6@vS`s;6%n@|?)4aFNL@CQ7s1E_hgLm>GK*eYIu2Mf<8AfG~@8d)8Jhb#5A z6=6tMjvPlkQYk>50gJ@kLXjKxvjSHDn`YPu#qP!}9`^E}mN)C_NmvHg1LC;dWD-*O z)|G@86UMR}h4~iIFaP3~iR#+-+hmqBIrcV#D%ufsE$GPMkE9rngzl}S9o`8Idj@Tv zciYVdpA2>Ui2Moh77M^UpMM!`i}R6R2mX|zf0$tWTh>zY$86bBTF=Tz&gmyg{)fdi z{KprEf6;UoDOmi3$is5Abo`yK=jZ#4Lt2V!L{?cU+RqT4%LHUlPH3**)`-&H+C|i% zVfh_(8<8Vr=}CA8@F6$crtwE#fS)iUtBqlS&Ea_Ss%D4h>9?dlyC0zS5Zp*8J(-a( zl%6keeo{JPTa0&LS%BmJT9_qS91Fg0B^^74Lqe41;Yax9)lM8Zba#EeT(U zRb`R=>0dJOthrqU6H73Xy>U#Z4QAPG54yyNR;wWwdtye&w&W{>-SBK-?Y<>rZ4y}Q37t_O7pa$353b6J|d;k?E*YDjO@cT9UxC%pOt2Hrp<%N!~Z zogSg`+sfi4bqm?`w%#X$=6z3(Wx0l8;xlN z=}83cUI&)$0__q`MM}$ML+t!K{psyi3B^BP{wL+C`6=Sa2>&k_&;RE?`9CXr zm5P)8LmO{BUgHF@EVp>VR_tsj>>t9w#Kt^4P>DLQ^}kcc@syTV{a3*8 z>*7_RO-t%k&AvK`$--3({sQpkKs|Pj!`HV31<6bh-)K3{mq*580!H9GPn!D>T1b5okbU1H6bxhrDs*?=a^zSbqPWUTmfkP)`Oibe;`~gjxG# zkNR{F3ln0*4)5zH$Mz5ld7Y2|GjSOQ--#pg#}yGL_Q-(VQ#QDO=w?@d9y8%6a5=`!{`mCN^`)LI?eo4oMck5h0X9UDzm~^ zmso`kvRZiciY%tg`sZ>eaFqfwTLX=e*=pm--*U}r*ob{7F^)6~ypZ(i==Cl1hbKoK zrI`!yb>-(9*_@=cBo<`Fb?1z_Vt&0Ls-H=wnXD0shiPsxNJ4 zmWjph_Qvzh{q)KUO*5Q^%!QI3xp>JFgn#`Wn^-W}v?*%39)p?84zJd1qQoP+z(~6o zOpQU%S`y4NT-0TGJ42EsnCgpf@t zE${H&N*0@;WlU0dvd&%TYZDjzQ8s-11t_^P#ZbGG*0H9Qjb`wfj zV1=^$s!kbePVGQycCvy9i%#MJIR_V4>Emmm597@?LQEh%!E=^rbL7<= zddp>wW6Fi|@+{Ryp1Qr1@lAHsI7tR$FiiP6{1E&f3V-eRK5}~w_nOFE51c@HYHxe~ zE`i((*#gcUF$16(?L(;>;N_tNFqyU5-D=fA>^9Vu+4aBh7cID>0s3zLX#zq(4;Hau>zn>a#?g3XiVFRB(n?qL(tYI5U~(pKQ}$?jBQa zGml#oPSFN!mSH(&K7lc#!pl`1UdWOyGpI%}D>Zu0%gHiY&oJ8GpAnA2e5Zeb3)H~y z;XKsWrP_a;kM2F^CQHaRtQKdO>Q4XuLK#4eHg$`oxiyo3%^eVTb0=mRH|mC{6=;I_ z#zxeTexT{JuSGg6ok$SuV(+A(4Q`PLl~z@RBsG;@8y&A-v{qLyw)guZ&UTg~Y~O6_ zcT*1rH*x5xRxHoS`6GwB(1yFnhPpX|1W{alz1q^Fyk(5M$sr8;`8bgW7EugGY&s`K zKVg*)dlbD}aMP-s6h_9IN}%+O-G~p`(LVAwp!hHxDgjtGnB<10xJ563qi5zJPHz>h zTohn3!#hS@iYo1}RtAO$DtxwXU>nwKv?oJLlXg z;5f0|*Ocgk25D6~uPwSTEc?jkgCTf?ov)m2?QXHTR?PAp^E#rhdbL zk*5M7yL55*mwkx$5bH6DYyLT43PLI70OsxJ2b#4SUrWF@SSRW+6J|dZtE5VltxqD{ zE3MW&sFp+FFN1`Lx-irWOcJd=SCnQ})D{YnKYN^=*ViM z`D}x<81x)>t-EPPxK14tYw|FJ`a>TwMRHYqVhfGUIh0{Ff;}QMw6LJab$`>yb&0)% z{n4wT@T6(S++zXlohU)e>ZL-ly%^@40Cy9tAci~Fc0=1vGO18p)b8y^PE%xIzQFsW zR}Or*2UW@1e=U_HllA&Dg!frliOh6ipwJT`SW!+=_fiQ_nOz6LIkf75e!qGqa5=Z+ z8m#w#8F0wTmyO$*;P_$pP#ro?YTOOMs|*xH4ULDu*x^Vlq|*bvgmi zbFM4j{yE$n0(4l@pDrYK@(wVCmZ1jrP$WXYHc~lAcLV9;{FR)OYpy(&J8VP$3gS3Q z<|s;WhG@pXdaz;@Mp~b&tj!S_9{mRE?WrTO@Otj%+3cKN?|Zfj3EeTTxlMKhvy}cq zPWIE1&CQL}%AVzXbr zyS-pI?BSXi_q)P}=@skzD&-kp>`rH2V(?R8sJ%2Ev`&+f7JEwG=+~U*&YE~7dDp2J|?-J0k7}uHv2i@$I{|U^c#}f{B$zPrQ9b4 z(M#vXosL^urw7}UzYzOBiucn3?L%^gY-137KfIkYYX{6Ek>=VNNTZgecB2tiNT0r` zPsxy~^T3<;Jzo@cdCMsD4UoqO86>!|UTVT|E#&V0#SJ%dbZqhJN0`w0lh4NY?^vh* z0QI(d21WuuQdT2ZM=>i~OCu{IYezjtGaKuFqM#z>PZ^CBH1BG!Pd_h#K3;ej)8tqp zT}Wxsl;GG{cz*So;6l2?fY{&&FTaV%zw0Z%*Z+oyJ%p5P6k4srXqA|rE8O9 z|79h*oQHJ4EgAaNX-XY>oR5?8k@|2@kE5W!A8wlcyl4JvBNnnZ%8bWxZYGrYNPyj! zm@t5rmLk3F7tADxu09{;XD6z$r|JXVg@Cl5v-#n}tf2mfIXyR9K5rPs%?ZSCWt$}; z5~G$h<>|_Us_@M8P`q;A)%hT~!+>J|VRp5O^k`;uteV1cLAi#6;eDi@J1Qtz&Bm{!|yYT^!1jGiI z>Wsi9(6fb8U?|YF2PM#-z(T+r$xvT-;#~wfrza^<$+U;G>6$2~*y2|8L%_`L3V0Ew zvY42znY2mI((*;a2aQPp_^Y=gscPP$+y*J;7tF-_8y%$ko~C6+ht4mw$<&AOgDN6k zitOEvg$jc&T%*cdSKN@3l$Q~;nLI&3>FQ=%16>V!My@z6-NeP7-Y;*x*I4d2n?{-Y z=UVdaAVdYX{osF`_MdmVp_X3nLTldrHg1HyL6@-Zh}Jwd@p?{`m=sAy%t>P-1vwL1 z;5woHCO<4sG4m((;(B=^Ke9$AFN3wCx>! z#Zp&X!#Vr<)#tJ5e1^5yv*Q(_6!;Zj{^q)2VTusD{xCBT_Hv-z3qQv(o;vcO*A1q`deQ33FjSGObn7?`s+hb-M4qH}_)k+NWW zVJc5JUQr-1dkKPS8gc|-wem}G&b(F(vJbSDj50`NGq^%G95MxoQHnatz#iaj2kDmF zE$V%NWlKr!Ib|zA&yaDN-E;2Wc$(g4)=b@NLS>7LCtl$?e)=4FIzXIMdS*E1iasFU zY86x~->`9WA-IB}ym$fW3^G1X?n^+QASh+ZuxBPfpSXqGcMi1Sh)iTAS#AD3SeIuy z@i5ij;Z#57Uj0HJ26}e3ho~^DsY`muLA+%BYo<~H5r^QDE81hO1=bDE1LZ5yM-scl^_Ng@O6SeZ?R6NT<8g8>s z-{a&Nk@5wO^PpmcnvEBvH;=PRM&lx4#LLO~gRt}O;?iP&+d-5|^Cn;VGAbyK*k+0b zUV>P$LE2LOIYls3eZ)sy4b{)+E#Z`P{Ik% z(m($F`?hZfk2$REu6vZoTe^I~bI7gV&mA7hatA-Q=Vg%cOqU3H#(alC04rPEJ` z{;Nly=#$Cf*yi-IrSO5n{O(zrDpv!eSa^3vw2jFg^CV(_KN`84t3ym=&!Yp{HQg5| z4fHeQ^|}e*o9vdVA1iqeI^q$xqQtq_pNi1SThzv97w995`CGFnIW%gB$Xj=9TmFG~ zK3~9{Jmkci7g4mPV}puB2((>olBMGnV&Yy$ZU1XH_M?k@fZdYiv5;kaHnb4c0h8DY z?Hc)^y5UP0Q`>LO9k{01m83I$E(BXh1FlL(W=_AJplO04`0=DkLhcthobi zxq>%Ki^qHh3RD7iCf7ju5pEXdkKpP8wqAPxYEx?X)_ns;5}vHV{84T|nJ6(Fc?QzV zaPWptTkfYtU+u0xtlhfncDyy|PUO6fI=SXeEHit79H(4jH3B^i?_U3yaYPJyi|3*a zs~+A=AY5@owilJ5K$LAp)1IuBPRpecT`<-fNZ@PR`UU%*DwD?WDOU$;3*XR|L3tP$ zFtw&>x7}%gPPCB5R4q9LK@mHr$nOAF*UXOW+RQ+q!X@W?9V#16AbX^{sU@c}vRQ5t zHql&YRh4&|#E)sxS10aSI(-=mdc0`{WWty^#0I5NCpF+~$kdoGHQ=T>I~xrRg)%36 z3dz<#E4)=#&ZI&bR&VRy?@vTt&(8?C7axpSA6U(FdJ(NtrKm{*yP!he&v3M?gu#9A zmN2?!If-~;0%gG(dsi)j`Z2OkV0h6)SZFL%OOFT9eeldyEwI-ho|a7H$+M6$;~+Nk zA!WDy79)|E`ta97^Y?kWN5AOjHVgUjSEYdCod&@aOCAuN_krykFSjN=r)kpBU;*HF zvjNEU`dF7mXM^8Hm-{oms8293S9fS?H4hM%NM?rWH$J?Ks|0}at&h6+0tw+6(tKm! z7H3Hvs)Q~Kz-UA(%sas=pY@SC0|e1FZy1jt=aZ>Yr5yGA1$x}EQXIgjApSkv0iGB^ zUv@s7-8;8DP2Q$!a4`|t7v>oLLB&>#$`XfRE+l66# z0B3xy)~K-eyIYK*xqBGm`&=@!txx5ib$H_XkyFH_*Kx81z#9~B%uaWkYQXm|4i;jz z$+?*$685Tz7iedYx5%o-Na{C#?Kkj%?mbekn%}6Qzw~DXCaf`!nWu4*wJpK=&|f;{ z1Eykgl5bvt{^v0)(${xu{W*p~Ke+z?(=nv~PYACxV}qdt`!%d>axg{gG|vo0B?}O| zn!)%ZA68dSZ|WLXBCfxDYP>;LrLn&GQQ+ zmQ}Xw$QKamp4nPI6I)Z&Y$xN{p!?N$d(s0Y+w&dEmyVKfE`r7AJ~^0MQv58@Qrcp( zld6b8Omep}+=Y>lu51q|Q-Q9CFC_phGlc<#QFE{{+(ijd5fO|_qFN1(Z>do*4TxXI zY+#e|KKiWs=tN-0d1V?lUP6hcR$#*cj8Pzzrj37yNSTIbiMln);CH}F;6l;d@xTeYc$`lZ{A>)wWtdA-AoJq_6zYp)&4 zP#8>jqc?KVZrStQu)qM1#Q8z$*mHR%fZM86JgN*1Ygwh_CE5A4CDsuoK?{VF)y;@T!YK-=7|Ec1$>g|(Z2YTiQ)dRfD6M0g7sJ{57r zSf76jK;e`J(+<3l2D}6l8fIMRrF>r#CbyA`m2%+4c6j)+f*#az)0d5ov8fn(pPg@KkG>4APs za95I{xu+gUTBO2b+yral?`d~(B*}l?fh$aljlyt8Bctr;CYy7XtBjI8l-peX`Z2tn zJ0MD3C49@>$atZrC@WNTvUUuWFfHu4vuAGU0JRBCPiuFhgMq~DawIGu-W^Crxlb$L zCdG$gK4va)Qn(b~f?ITr&*STdPM{f-LemFdgrd2?vP5o#F6E)#vcq%E*+o1L-lzvo zgFc|RpOQQ*%&-dg?6Q7_L)M%{lF#Xk;2vVd3RUZw#CxxxyNfYleBt zu*oMuEwqxXqc}0JL(~^XD9{g(!z_q9Mtuh${ou_WtP3@Z+!+HCPJpp^_*dIeLkZ#R z(w_ld#*eA;zg2Vp_hS5CUH*TQl?*9r{9|kL6&b%YNum5!UP z>v}VU*$kptzZJh#MfNR*AjL?`{qm2w9b1Wp+Pc=lL;wwg!}PQ#!_MU8>*M=~%r7<0 zAN>KgL|r;=T!ON8IEg%Bp{fL~pC%@TohALlM*cBfsjG`_o8Q8!+^z&r6 z7A0LR{!s&lwonJ5Ib;9{xWAtMNvh9o`p{njs~HE$cTxTir<7C3vi6qo*g3$&X#Z=A}M*w@BdmzcNFGv9z@0)Z-Ydx3G+ZluOeNY0eSDDopklO7Q z(`nf4NEK&&{K;tCPCBDL`mtOFu}P5IkG;7@81#A&^P(-33rx@yceUGISNg@Mg!~R} zYZKCqiC7~Fz_g}VxyBIo9Vi@NtOv0W&LkvYRgb)+vzeZ-tTh*XXs3N=qXXJS=cxNZ zWImmWxP9@KvhWL{{}*NF7-U>X$SJZsN0*P3H|gM@)}5QdhNfwr1Lnv{WH5HxD2ez0!MWHsr|8m<;DCRm_$ z+xvafSiJQ-D)V8D^h5(sSb9lDRT@djb7NUp@{~ePuJT=>A&lp8h=kLk$U=dh{u@_F zFKOKbl!~s^KKLhl`L{+oDN9gg+Y-_T>h1J5%%3ap?Yyz`UeJelK7?F7_jejf?~*G; zc(o;(1`NQ>p=|lQ-Y0)j)ERA%8U9j!H-}nK^OWCjd@Zm^iu}* zoNgpf=!sI!wdsBQ$_|L4;&OgjVVoZ%@{7*)|C^+0C)-}|;zv?d^)tif{Qv1k|M@!n z%lhwD(y{snj*Lw&)3%khM6+^mT2w~S0lC~T8bT2TO%OGS_l0#;)_Kgd<-(TulaKc; zFAw6s-hjbQe0^foIiI*-uj`2%ucHkwGhaNvZ@|1r8DtY{>N<;oqmpnaR+tUe8RDd- zEa9NRRDYa`Q6^kaF_7_DO)#z;2q8=)yaydW<4_|TInf**6oaCN8F&-pSfayKi?jJ( z2x8F`8F=}gY1G+1Kpa71M#U-*LGsouPcJ99etJkL?~>!2x8}bBmkoDrWxKCC`__^D zBbHZ9DLhNnBPq1iLJW*5=Lt?sc}=RjKv7AvEg+vE@Es*zuKPNBg12LX`Nk+VEI7b4 zK@cvK6`!C9L`F6HG)K2HrG5mB}Lq zefY$d#7kDE2^7JGzelY_1)7I9zfhsx+n#Hi!A@?Y+)e<`E?Y^4S@ zy}Xka(|xxlh?y|K9Q_gcKn_jCNg)XkL4e9I@=M}=3xfu*z>LPhWKRsFLxNO3DppkL zRH|rIszkbnFKN=TAc*jLA)dFayZnIeS~{ycJJvT_S~eGLS}!wruU~(9DWm|PF9pAz ztZVOWj$@zPXUDDkta!C8uPgfBp6Q9P9xoB_=sOJXe=6u=t?pTDa&C4ce0UFg=ifd$ zVkeo_U@RK9T^>h9!k*wxPU_%a-BmM>yV%R7kDED)CJk(2UUqt+dAq{w%uzq~bOS6R-D5I(0iHl&nJ4bj(C0&=`XiWg6i7bP0Fq#Nmki6btNclFmSeAR{i7mGNIbw*r_9v z$!=<=oPFcyS)@b%4g6qYM_O1HXIebjD765P?@{IJ5{QccXF zF{F`_3PFbH=1+#UwP@<8`((YTv|_{SijH#YG@quNV=d_H>q_cm>Z|A1Fr35CyS6{6 zswm^wQt{bqWCw?qtOA_9%bP3!IgbO0O;nzv;8JgiV-)*oXp_$^#UXTdq7r%XlT&V| zr=;21O1EXUPb1?Nt8h_LmmN?J6SkkS818=UsU)qQCdycVm$#n9 zarRc8-0~}tZ?c>|8&^(#p{dHkC`bhle@dMKSui`w-qH3m02CTzU5?PFl2_Vf0yB?Q zPpgYhKuokL4Apcpw^sghB|z$PB?7OvPl*HnqYWeVr5=yQ_XCYanPG{-S33-rdq{Q` zj*mBF{3EPjId;4`JWmV|`OUQH{dW5WpKq(T6X@l(=Or7zXZh&+2AuCJjPLdKTioL& z2cPHwm@r{~Sk(G1Qfk9@G?}}{ePBFVRz0Adr(9XjNN2M~r}OBV)5({6R;RVx#75_H zu2||U3#Qa{^f@w?bR49)Qz$e0tZxjNMUkFszx2qQc>_11M%wxL*|C%TeSyfgM>F!-lIbo1zCrJb#bsZXZhfQVg5+PKrU%_d>B%CvX!l{UVh@ zac?*}!hIAnWeaw%rEzk1%?li-eszn z7yDKFF~@@M-rvxmRL{)snkVgi8ADR}BZI1-6yzeQod z-d@fg*n2aPoR1LO7Nrr)ST|5u$k>M@GP;T$o(ul&`ch9-gdmZfJc_6yHWxU&#bw;` z_BBPl^>rw_a8=DBYc+k+_aJ3wj^6}Ume;1lP!1yl4-OSNB zL-W2_v_(-X&Ya>1f87s;Z={Du2e`?Hv6=-EpxSn2NoKEO@Sw%!(a!Q zM(FD0zgiL+!4ELM_Si=7?)?iWJu@`jjGW6z$+bE)4ANp_Zv;w;WXJ%Rg0yi8qAVf~ z8`PMlpMpHl4l+Bq%0z>plmFVx08;0y5}M z!4LXg9p18IXfmCG@XF(;Qr-lX>)*D5(gNCyD>{n+H8~81DS9hfsm1Mqq15n3;+k7M zeYn%kDx@P+&hBXIncM8Gg-z(su5^yz8<;K_gukIc&tE%$G$1Bq@w*{zlKq}3!# zLZFoiVND{y(}=aVrloy1^$@Hho^2A^Mv^Q^%w*A$Oa}Cv<*+ZduLMel@}OsCgVHHp zNqOcp$=PKgIRu{Ymnp|@4d+fP5f6QQ(~_R1B~3&F1WS$%GBGf*t&tV3Ob&3(-Ci>W z%-nt6PFN><(c`ydik^{9eS{xO2sfqvar;L>9Qok@oB&mn!GvhDx77C7 zf>x%bFC`=kp{!XCP0O+K7iftMkhv>&G!1%j`yN zwxJCl(|J$eIZ=Q>BD?cH=}bXC*g9#GSHMJX!km5--qL*!&X+g^zGNrI)0;LO;Nunk zhzB$)s?YdpXDfMUrii1;VlKCH-Xu#Bh_)pQMDalPaV$6dmcQ-u+kVA6j?F1ra!ONy z++b4>S7IVyx2xp(??Cb0BQl>d1s`ap_K{O2d||2e5ZeYaewfF*of|vb`vi|Zc+#~E zXWzdUzd~b-KG`Q*s)ih>FYT>y^a1OvtC+$;@kAaD6XD{x?{Ax{-g16|VFOh9HM5LU ztWYW|^ai>*5!u7WCi}}M;X2^+JsT@KZ1^nU@}9)&-asd)wqsv0r6MOq-x>Npk#jWp zgh;kVBqJ%wUMtmeY8U}3(%^ELEgV3ll0kRke41KRdV-(>7lq28Rj-Ew2#!X57c!$} zZg6CCE1$r(4c^^NP{!INSRe#gVLhSn6GdSk0B%SDdy2pN!vK7z23|oa)i0;|*3Ad( zFxs{m$*<|juNldE#uz3Bqx-G*> zi`P^NLr=2|vNRGQ)0=m{_+!5i-x3#4x`wUs1!!1GcBKV=N3hBtT3F3h9fUJWk(!)V**mN5fPJ94$jstrT5l-`XLmgEnVe6oM~;Hm zj~pCnyw|?~q~Ofvcjau9c~!19c)(+&9@D5XmXy{nJKkw?a;W!rtq^hGjJ1|YSC1DZ z$JD<`?Re-FuGb|owvHd9#w4|;8>TaJ!UqSbMnN)S0;WemQ4D&ghcJ08(8fDfrC_QP zl@_X)7RZWX(jmd`V zg2tqilJ2ZwJ7+Q&ABD_2wh%-eAU4$}tPx>oG2pBb!(CEP>2< z;QcT{2{U4;O@kgM%d)Sk5!hX%l;qE+qPMcpb| z&b}?GbY+lbL*9_#A}dtbI-ztVGjDodJu#mGxhsoT5eJRg2Me<+l17Nm6qHG?#9AoX zqMxrFQGCY`a?7YqjoYRyxDl})mn5rAqSGeQ*QV6rko&Nsu6 z=iCy9a_UYk%^`=w>;Rb>NNvtREnl=|h_D?j+RQYRye|K8)SKsqp%WRSl0+l89Cg+UiJJQ)DYH4!1 z9H-UAgT(1+AW^O9#_SYw_{eF@`DqOHNes3_%0`gW0Ta8PttrPhHEq1s3`J{0k{=vJ zJ8tIzT*|}reaqkvjjv7SPZ-^(4mG6PK43dI{CM|E#)ZpRKkXL!m4WwWh(amud(i$$ zsP%A5L(P_{Es{u=(Z+FH5zhV|i_y~r)MXMI#`)s$86euKWp!9FeE#3Fi(wBp0=-Td zxsvKs7~C@Y(+_~y6L1Ae_*-`OG_l@aDWgQ{6neYmPZ(6Y`!N)#6R~OK`XC2s4MSTX z!4oO5nHg$htB~tSbX+AHeQr7$$C~*h+%khK6NVa$?HRu^Va(~gisj&9x^h65IeT*i zW4NP%c5Q^!8^tdIyXF_i8mF?YDPMzJye4LdE;lXokMdHU+t3onp6^M`{JEGu6GsKI zdeRph7uDyS&9ic)B5nZinn1H;1|@C1!RtMp>fQi&8CCnRHBd&5|K4fTL3K+9g%0mN zGNvpqNAEobKEYlf&hw4|%U;*op7hjNhJ00)dBDVdX_24zEH3R&|M#KMui1dwj~`Fl z=1;^4%YQm6`)@Xne}Nb#s~Y?R`oSZG#5$k?D1cIDsY$R3fT$1&YJ->`4OTW_2&m;w zETz6-oo1|*KfiPu8kTM$Lnep z-0%B-9qqR+H(Wlf5T)&MK3uA(p*sYD z^vzVP$GnfO%pJ*KDma060EI4(@~s8Jd=?|JAT+7+1Z7z^a&UmU5<Lhii znWT5!gPmt9=F6KgL6^S@w+J-HJ02JA?0H)aF=KXcep+OBG>q zM~u~bD3Q~G1d-3HI{0mR$usoks#Mn96A~(aRdYY(EB{dz$1Wu8%s-?mVx9;Dn@M7d5Q%5;ly*C>BZ(kZ`J^2h=xc~~Wv2c$dBBL(;ULnl#a`R{w*U-R z0oLb4F@CWQM5+Im+m>E&Cuwv+QlqqNZ#u5x-ER!!N-jO*M)eW_RY)113EUSv>}Py} zD`#M*tFF!%K~mu3yC=BibrP=rem>DBnH3SS6${Uf4=`x_6gkmKqTfkM^p{lu*zpH7 zXSVkGtQs6){wKXUP#N%}ChPalhpyto@`l^mN>(DnBZ#0Bj+{M&u|ZE>NHgi^tgO1XNV5kjty8TqSW;4UTL zk`g;-_es#p0a|gRKm9wdXP=PrPtni;P^)< z1awPbZLSv@HB}iUVd$oS6fAhsnK1cN;rW|w4Lq#mhMm;AFrU=JGS>*%e8W}z@mJ#1 z$#9PXXNE%d(9d$0zWIg^;tDq{vPV-o2n$uV^Mohro)9M!Jtq0Nmep1rw-TdV$0~J) z^dKZP++~;(rvrnx{PYG!40@@tM07J7&6VC%7SpQArw~i@p`@Io{Rj&Wg6XoztFM%p z=~8%P$T^AoF{xzE*PB|A}mIYBYSl%bz#@-z!Xa(6W&l%+aF4NV4j9{`IMd%zo&&xvH_bCt(_ zF-ml^gg&mOz-DZ-Zy9=vw4l`AANtsKuf3ZbBe^#i_m0VM33Hz4=?1A9;L$lg-Y{?$ zZ$UX~qnlRDGqq*MwWC?vaSXXv41#k;>jHdihh$rF-gcvy!CDyRSCdHhQqjaIe!he_DCMWW-hfgelK!$N@{cC^F>z@r(J29-HZ(WY*N zuw~sC8;vzn*0r#De?0F4@?(H~ihch@z|4Al1mI1??1SM8EIl3@d(9~_I6fut&vk~eBEh5ar* z$!#KbGRml=t2!4JXl2mqwkBpkjkIO(wK!yQ*!CXuv{#k$CY6Q~}92e8ozp zbTc*Ekl+v-+D7ijbp)Aosp%qgipb@Lu)5{?Fe=Q4T+QRfm@z{Nvm(VbSBf3z>skfr z_@Q5zSHYZhg-S6&qdH2b*0W-f(ycJECXQ9DX3i%?XMV>LnTLgl1!#M-cd;ssdaBKA z?FwfTFkwdf@xq=5@gA2g?_{t0_PVc(?*Zb{lypM2Z~Eg4h{tC1P*FlG9beX}x^ zR*j!UzW(I9>!6Cli~FM>~cGgcZDmN|@`NZ;@OCEZ1=kAE1 zE-P(?h47!8Q#)-Dot!vHE?oqY+^v%-v06FARe-X+Uo7%>nlTyBRuO3AZGP67`5MCy zDO`x#?wRMGk5SZOk5ZIwV$1@su z()JgkLHm`?yr8(Hvl6JT`_wTGi)Eqwilj)Y5mpgRb4_bSi^C5D>0Nx{zA?u^sip%> zKjc$TOQu{>x$Y1+m@ypBO{S4q3R*#gK@;U&D~z6BcL1R;;c$=k7cXcGzJffGUw;a` zd)``a!f5l2oK(p(3tZ}qnj*bw zGv} z3rG6GJc|4dFDp`635rL?80eeF9CK#IJ%bKU7CX7JV)TpK2&C&AJJuHSkEUS^7pb3M z*>SF4H1lA4@iZb6c?n38E1Au|Ptw7i`sFr|Luumd=oEO(>MWQl8f=-DCX0s;1vFVt zyPJ&Aki^2B1aghs!Z12megpF=a~#|soB5_~Kye?YKrgmaJDzTSAid*Kp%%}n+lkHx zqJ0#QwHvx}kMUkS07t#Q1Lc_$Uj4L=NXAWMC;h@TYVR)24N?fCm3;u0VEv!~KKVtq z;-c^01A;DbY?kFW)zPExb{#)gYmce7Pl>v;z)#DcxwD;_knc3WMSZH~ek^uvS7^-B&b;*8y1fF%$p(S^V?(NzzReGpB&_Qq!26dnE z7s~aHwMA#5QPH*OI{^^<4*)*NtY{wukXfCyiHRu=CbPzC{8~GJrTVzg=vf@HUoiIDc39R+ot|{BfX9U4rKXROsVw|SA-i` z&<9^)`2_1=<?M!VdOdp}y2`eS#c|2o}` ziT1sO)c7E4?a7V#fSFGp*_2R>P4u~G>_zU$&st5DLQ1OlSCVRaBuTW|%s5xkxt4>7 zRzK0bCCmUD^a6pZ?l!onjp~qY&NXb={qqNsa|<>)Ub2O-sF8##n=Te7*N8bL^Gl3r zHLVYZlkeYVvxb83Pe4EN7E&Yt0J{ITKiU5d&9ZVv`N?ZCtsOP}H5$S%#2O4F*nlk& z&aD1xHz5HDTYS8v39@*7)HH#5bE5Am2*{ES#cNUZQY7Eff=1Y8ErJA+2DKWUTa`yl zA-38xM(q3izuda(qsE!EP&`gkY}ekY&v#wZ@4ok2ep`P4^kJuh5QIul?(6hIfEkSg zM@HA5Y}R0c$jf018F7+!c`@NY9oWN&2)xm9sd|qC+w=y&1=C`|4=02gPRqpM$L*VREH9myEtZ%yW%(15L{QtR!{2l=eS zod$wjKatDC%6RsM;R6a!V$sK&%X6_*kE>&9iMPdPZ4jL^ZA(`eKl+KXqB3bkjCz}j z3E9N*zDx(iqP~{YIGUP`_hnj7bR*bEmcTmQ6lEpZo+_HglSOQBR7farHR_3%UVY$B zn!*6aZAu!Q^96TXa*Ob^>yG*|USl>UC^p~?Tu}*AGy43Fc|^Of3slWLp?pVJQS(k2 zdS_<-%>BfdjA1N=Pk)lVkK0TSO}RzbK$7J|Hc9tg7uT3lbMaZ`-Orm%Vyz+&TLt6T z$sL7Zc-XSSLv!bAh|hz?ZZ`-hSEo0c#lUEbGVD#wF;^d{FIDeAN8?y3C(Kg~b&ia< zR2Zc?$CueU7sVRMXkS1ClQ&I&o;3YKoQP+?q99tY@4ucEjKpQ7-Y$@c(w6^qR$lFH z$p8srk8d<(l8D891PEIh@uCYtZmNs?FjyHq+N1=O?{3PR$;_p=XK0eYxmX}LT!F0*ViRKZG_1Y1m(%@h*#lyWt99%#C- z2~9ZiUBd{W{66PxgI-y2Fc@TlWOX&Fw&0c zCWUr0ii{x!bMA_nQG9M|O8nNq*7dz_RGh;d7ZDA0O2`K2a`g zhuaK>BBSznWZf@$cmDPkGLF=+;*nxOfqF1sxI07$voX(tehLdKGQJsZeubn#8U1TJ zJ-JQi5%jcNv9luGS-jK)T}|mr_>a>IQbjum5_t4O8O8l;!>Vr65T7am*jx#Vu~e$$ zO20K^KeeY}26-0%(2>6aQFi8hi)r3Tze`t|(MLbTFTzKWQL+uCYt!RQlftbk^he#& zEdz7K6rAOIDo8r~JW|b0LnzG$@EhsB*wHz`*P%CZzwARI@vP;+eQ>zU9f_jthFMOE zK&U6F_$wLd6tQ6~B-er_xoN;!*}>SHT0^fB%x&1&gA+7930Ss+f4P!(L*Kt^cay~E z&bBPhw#2LrC|WcX6qI#nd0em-%TC)lFIXt%#v~NRNKI}%jrnwHKeoik8XC094Z(kc8~=M1m$mK&n@^ZwuxB z5zi?&BSj8DWVo5e-#5xu6QBJ>_+|}F4@N;Vz;}?CZ%1Tw;nVQ^EqeroW8;ErQ(S13 zR9Ib8*cwOdA*O{4PR2&KiSJM$5{@QWE@W^I^D7N{qXO4orI*M#Eoo8qu1Nn{HK z&qMnIyG9V6LHlubzh9|B{_s|1p~yT84PkH-dF;~5O7KzKz9Jx%Dih}p>d`Zb5&PuJ z&`OxDi4&ID4=kup&+N9VH!HRgxBHZ_Ac4$Q5km~K4~FQeqwT`Q9+4t9*`z6TT2lQ> zBgM90( z36k{9g+e&(n_HY`h*5dJhGJQ6lybsjE{vtzg&K^=?I|W`;o-eaby}Uak|b zX#iiiEXKDgAdmy9z=dFD>!8}D)xqS_mincY?se_0o-mULjqW}=Dd+)eIT5l}0Lz!U zOPxo+po$EKE^^#uPukZ`T5RerS7Uy)nZnO3tg)xCUg{^$sc0QvK9n!v*H4_&^?W@% z#!zm0aSy_EPeTyd@RKau3v>kKTm$UrEPua>WpME-;Rz(9l=A(HV(5$0F| zbhAS)5o=BK7-&wANyO?^mEu! zk2Dc7kYQrr_;)^oH1MBR)KDWfnOFBt^QBNkJ|qP^j}M~fU>qjp+(`8i*1)9=4Eht@ z2C=`IY6HFJ+*qI%xv_%9%QD`0aPE}KI;<|Q0>&`dI(*?-)UnxxUO_jp1d@$}~ z`Zi=9XW*HFHfmg=Je&u)ZP8d~tk!9)Df*1u?E5ecWiPTL`@m*a&KNI>dWErUCseRi zc~HnO$7L1z{+8#$J~{Tx@mri|<6X)Jlm;URgV4$xN$GP|pCIq5^4KI0=DUO5ty#Md3MA5{_&c)HlM8w_5 z#Qy)-#k1u*C4qm0wTa7T9azyreUhDNVTCJU@xQ}VBSi>L$3l1MiWGUO7|VuR}?W0i<#rmG`f}wczAMCI$Z5f9W;Ccu5g`YHKA^hqCjhe=T++rE!U!D7c8mD^#_Z>Dvvu2hWs3 zIGZ0rR3?EsAw4dWbNcHO%n+6AFRf)`O7fwyGsr;&Z*o}W?=-krqYR%9P96Q5-Oe#s zojVy00Kkm|0D$>__$6F_=v;<$@&=AhCXTBAxOcHO_}@9pi|StbnQAV4!-`d*d}O|( z;g($CGKnj9LNaq55*Z~fIGrv(-(0RZ02MWS460H}#XPJ!aEkt*00sQ-Y`KOcS2J9E z_^gX3&v^7rCRd<qxP5vZ=2sidx*yygqEi2e`&}29br;QJqJIXaYCn*`!_M(_oaA;L6dxPk znV|cK4Edqmr~v9Y%`SHY@O1(bt^!}mS0SD4Wyb+>no~yij6r+8EXX`#H)_kka{F)cxyH$*v zaz813Xykt5_)Mk#woCsKtXl?s$M5x}Sowx}qUzm3xUmB4L9|EvEdgKzc?@xcFhQ}> zz&&M>3eXzKBlsjpFcoONv_n3HzUKHcFrYfJ43stz%t+(tP@nqb0Esifi=GPQP@L-N zo^1UD?HX^bs-7M>zWXa3XAcUn(xhW((#k}yIJ0u&0}Wm8V$Vgow?&60o5!a5^M_fC zb9Hr^kY8$H<~6<>Qvz&*`_2W|`q<>`jK8(sU}h(!Cda3w@IE`^PL2UP7!t54N{EEr z5kS$yfhUEPpEipf5pyb?$@T1vr^|Rw6S=nNZKI^7ui99r5BkezE1rAT6 zK;cfFPqv#@mk-Y>A{HtH+|jGNjTaLOl4w-FGa%0FPMpL{SWk3YWD7DJCC7FSQ=)P@)Oj>^jqf;9{{{++ZO zvDIEe;RiTe%POtI$U?n^`wUfM8}ap$#5e3pi?6ADEP2i*kwTA($y{Xzq6>&Q({>u{ z6`@G#_HpIJ6ul7`5XMIdeIwp$lEqtyJpRbl@TR^NlSuQ>iXJ9}(0(q=QVl--IlJ!G zIJc8U9uq*bh*%~SI?}}g4TcOr^7NGpDB7Z`P4yC?uG{a z$BV4>ZN%8nL8JpHK8Y8p`W=$!C`W}-kO!G)X9UximR?n2xrXj$dY2A!acwu3M|i zr)pfqS^0UfTW;QMUA?FiR<()_?Eh(BmJKvN+k3>a+p$DnHpj`+($TJTz+Gml=8y}` zp9Mb^YBNcRJ6!35#TtZcm3TCisJ_$FKrwf^ zXV8zai3Wqm=i9aWas*~^2dLU0(`eC*}Acggpyms8Z$Z?;xv zyBX()Wr~PU8n&1n{v$q_PAl;6`yyV<)ULsLO*DM10!N3?eLou(9)HONQ<8g&#Zs_) z;$wL-oOhL$YWz|onyc>77EYT4Ni28;`;{LeG%D-UC+~-blO!rEV;VXd0o;eOXe2}_ zQ%S;ezXvQzj@0Oh0p7tk6V;|eK|)|z^gUJ0yHJI+MiZ7k)_gpwni(nCg(_Y?71aWj z5jcn2j@X(YhAVSV#{}E<#szwe@2Z_%ZKMZ6;xp#G8-&OBP|{v+uUa|nA8eDhS-1G0 zNCKN6D@<}wO2jNI-Jfacm$k=KbaO45wuhwvB}H_f0}l$WyDME#vtL#q9ECqqvR_d-mq*R2bFbrJ0wu(t+u z4At$skSCw($Q%4$cCWDLduB2ZJH<@4y#`NR7* z0CW;iW*}N#s^q}bu zwK_$!6-J*EzCLvI#D6A0CPrswYI!i|z-0=57pt1E3RX?P)g9=jl+P?^oiOjvK0L6Q zc@P?@gQt=$KC+BV)W;7_*`e)j8g#;W&%&t0;i4P>oqzsiib2J?NU6>%g1)`ClW3-w z6R%R_>Ya4=w;INXq%FJ);DnaefbtE6UUdc6nM{>o)8yP9qSD02;CHFH z&R-6ZbKqu#E`yp8F8g0sL6~j|fS>U`_6L7UKv4s1p(vX`eKNjQcsok!51aidDsl=k zI^!PTNMu2lRVETBhEq?N=Q%KQWGPiZG_wWEA|Rf#Lf$ubF)o^iLf5~z@0HN?5J+Hj3r>wRktKbvbhmEr3krD7o(P5m)^qb$#JApO7V*hWkc_RX?4002S z4r$O3bAB7GNGi06REDB_Zb7x+YD!7cOE%hR1oNob?P?Bbl4cOqe2@y7fmp^)t8+W0 zOquxXqM*4X@)GCSnaF}{K5J=tvTP*h{%AJDuUTMrE%;u$*k4BYg)$H9Ec3`sxul34 z6j>`M6;~8RvdN=;0}k56L=H`gMtC5+ zNV@s`profjbbVEUVDzu#DPD*#4G%);0IGrs@|t6moF_*cYbSUXbBDvffC@gOMaRra zw#ee~P0v0#EahVo+;U0ipgg964;IZ*pQ#VB{k!OB;?A57A)nC4Oyj+KNM12a8|Gsh zT`qMFyqmr-?-q>amej!8I_<6`yx=I_O&sUd;$QRviF$Gfw(KIGiK31q?$`G|G57Gb zi*}by7(TG+KRhtL`Uqk0GtFLvBAL2;a(1^vcDMa^>H2O`mBF&NZ|Xfl_^iX>H5Qww zZQLb7b}7!-J)T0HF24XTd_fNn7o$L^8bMQ6T~h^axT-+B29VGjEiEn9G^4V!T^=9j zm72_Q%4>TU@cS2X6?s2lP#=#mOH$U5q->O=Xu@A-ZWM4d=NE?2&Ca%{OTK`jbVJK~ zw1dhEQ_AI5+=`_rIy_s-OD**Lx(j`=codgWT&7uGVK3fT+IyMtdH6w(jnlf;Qo7by zJ(@{4@YPnLMiW!uS_3noja1eS7}pPSI-q*ydnR%-3qHxF|F91`x+aG5D34|&_*IXR z?1#u|>4LsqE3c{qSGbqDB>JhUF!mO8&?u!Tw`x~O=UZm9PL=L%a(ib^SvVguckJfs zww*C8ThPU-3qPFT7#(%nz(%ZSuA@|8b9a!!8b{ zV(n>ues%K4O;W+j9oAGK)GqF%V(7WN;*tq{GYJ(()Z9erUOawk_inq`YMIn>AUk|5 z*2^hqU4HFWa&{kb>K0enBXqQ9ICO+W&GVw#S9EtE0d+@Zam3V_JaooYo8i@!0r!B# z-HklOs4d*@!o%GL>xc$+=3Acc-{7bC6O?llO$k(3QhEU)y}#ulDWbm?^S24t-+~Kh z-W8;z8iL(kDOHH!1ZLLYBo->~X~s!7I{SfT@QwSqW507b_yLNInd zq5zPkh8n7}UOMY9Cb$_{%XJ^i8r0b~Ir!(L-M>xwj8u?ds(xfNXjlLM?Ei6_tMn5i z_`{&~{J*!l#cGi1+KZ@P*VGgA+)MmG1Pd5!X>rnt>W1EHyGTIdT)mTHwQ7TOijQq3i#d7_2YYnqiymX(_})ft+d>mr@2-(An982Vu#{i#mZ zpWEHXJ;zyISMB!;-*_9)`r#Sqf3Y@pexA(+T=H&U{03(m-7!UMeYrv9vxWT|yKelU z!sjaP)hXR6;OQ3DrZk{K_~)p96L6wIWrK*vYH8W0jqSIiSDn%T8xYFU4e#k?!qydl zHb(qzS=hS>_pg<}_LacUyBqo^sHZR(eAHVR#BHS8w4dN+Zi2ma!aqcbxk+1YBHSeX z*AmyK+}wd?BHr7f#~@z<0OPk^>W=|1e&qf5qfdGdyCed>IQ+oAgvh>>-MQf}?eIMa zmA;sN!`(GJd+v6Z0kfj8g}e5K?TUO@eplXRz}LRl$>kFp5KjshjWc&(7k+komKsq0 zP>my=gA;)3XXN#mn>6Gy;#ZE`=jeriO^LBA4+GTY*iCDe-eXnCSq*h=Z3&}ibKD6H zpPncVh97=V618raG#BIt4`fl3@dUve=3P>;Yx=qy7c59LGEXCR(Xw1DRq}b6MJG7) z(X2e2aXA+El+;__PZ^$%!bXJoc2d`MRgrPB*vK-sX%+($C0qV0tIAfw(Y$b%uvIHP zYex%1%djW2BS&GgG=W7w=#;H`quO#e(dZ&Unc=VI9K$G^M&o(@Iq`XB(pMRQW~zy` zB>IOdmim(xR^LmUuro+s4oAt!Kt`$sOJc%}({@oqYg7%#nD7BY)4+hvjuM&Pd6es; z5a>)IhC-9P+IjJ+)M_WTCD}D+%H0(}9#gv@Rb1Uo9Jz;}7MP)tl+mo-1=_X6yuN_v zoN=L~!G{LCer}e?U6(}`CZ=xcbe&y=MW$IZY>eISx@57$N6*fJkQ{mP;u897S={v8 zNTNiB)x9x-oP`y4Zxxq&G#`0*kw^8|#NT4m?(-%?#9&m{lB7-uS={Mb*Ac^D(Lw3q zxUA7a1Q&qaonAg09P(uBt{S5Vr17>x$VytQuV0AK#jDQrv|V8_dRH#SJ7_q5x-Gy`4G`}6k)F$O7-FCmXiut59gA!JeUtvIG{w3?I6-Qswi^rtSHq$ zjos5r?vhCRz43}Dl*IZ=?So68l=Dj>+7wZxYK2knT5?o%%`MS149XN`lFL`2oJei2 zg8aps*2T>&V<^oim#r!U*^eqDgNwm+^H3_Dd&r&6>aVHrJ;anl5Aiax4;5Q@QH;CL ztBCZt9)%40tfnd&4>cm&RV>FF?8g#3jO2o?=}_gGi`~DxP&NNxlJQ+6-c4XvqF0Ad z&@DRvwbd(ovxwXlsHAslHiSnW7Xp| zE@$ARY!hae;DvLTkXqrGq+rTzt0T2wQ7nI*#gy2$>HI;zvsq72SRidE&DFcY3zwul z)I26j8v0+Py#-j7OY=XDgmiZ|BHi8H-Q9@NEh*jIEl8I%DBVbRcXvri$p7~E`hQ=~ zIeO0T`relhH zrgrqDc7}8FMCNvlm0V-Hg}jTF8cE5Kt(F>k3GaY~X6Bq*ZjS~nHQWLy<@3++yl?j3 zMDea>tWv5}NVsE_FWEx6v>zcH`a#%ai-Z0`(J@L*C_cI#Po%X7!nD@ z=#v;}h>8l+ZRj0Tr07HW!t#+A#iqNx@E#CkgUdWVk5Bp?%TkY2whf2#y5R>9yf)zo zgOnss(^$1GL{UF#hCm-zqt$)!={0FG|DhW9vZvE}oqKezBKd+}k-CO&mo5jCWOCvY z*zu<{Z6NOb`|w;(EoD!#{i;p9>=YtaSKpe0!}`KXdi06(W61`S3Jiq3=twRIoe=59 zvJVDc3%2FLCLBE&kV_ar6;o=a#5hD_L?LytFDR`RTys9#wg_J+8kMu;rR^F}&Amt) zxK-QZ%O5|p38_ht7PsB4$T40?m+&IMcjuFu8{T48>@(Mv>Zk36G0m%nPvRlXDAf}( zB6g$bYs0?+LD(U$h2?z5A@pV+ZPnpTDq8doNIP2e2?(sRKsMN9{u>fVjd;*dd;>ce zO1n1-FqF96kPsTNpxYd6<7f;nXanFJOb{w4SPruIpHUm4`C5X_ca6;U7#yxpw%7A6 zE=|KHpWR$b>Vys0Jcie$f8$U#RUi=)sO1f`F3Os`_C3<)mAe$~y2#96J>Ze%s@Fnof=wC3O?UxE51G6BWfv*^PtQ2j=sA zbpy(3mAv_R&N1#|dK8P5*xN(fGOKE-F1SOD8STwr4p>4(2r^>a^ZH$4hFFR{4th-YS zj~V+5(9vvqW{9E)a`z_Zs^O(ri*&GfpNT;aoRFkj<&=-6eLc3;x$u3nZW z8*JTY-g*BVOs)c4`56Y>Z3{p^`R{_szdL&V?Ba<~`6H_$--#9$F0L?N(3{XKV@mW^ z1;JP)n3BXq$0ef%i;riZun)Kr)79OK@In9v?pn+NxZBKzM z!1mWIyu}0j>!ei_d$^%>0iU!#W+w+&ISWHwoM4^jpT}fl`4G!4CWdk6kZB)=h;o8T zswRolqOU>cI#v_mCQ|73+(MDj8IcPc`gnn2kBNjFkSo{q=V-xvUZ)GJd|?3mcz|;T8V8Q?~L?>~ykQEYx-S`!oh=7g{=PnfoAvG%BCX&+&WR^qI3;c${{1` z^-CrMI1FL@>kuqCrmv8uB99aw;9|=e`*xgD`ce*h86s!SEd)GIRxswka2$I($HKR^ z-Qk~Ux5hGN9#Ak?#i>W~YnHO!Q!P2pZZaJWh^jqM}#Y-FLQ7Z>CMyi7$^c!9*p*l z;AbSRD0XbV1*ZzAVnr5uZ~@ z!*HFXMAL^CdN+vGYaXR)5iM4Xc#%H%bJm+3E(j|z@H}nn#8pj1_QfQG^Seyz%+4@6 zcG#UZr;lUN@ATKU$-h#So|Qyb-(&tfGd6hU_E-RCv^_98zJ)B<*qhV8bhb8iq&G8k zaI~;CvvB}^7qvFFF|n{V7qm3DvA1x1Vf8&ZPlV!tT!#P}FJ|`CEyxz~qd@T3dTIia zL~3%yn+7{pAok1$n<)e3ffdv14NxWzv9w6!;H))bhM^yduFi#@&u$v}CADOT zs~PM-r9QTD5cU|MryLm-JES5F{E7O3fjJrK)@MPM9e*)?-EJg;ootnuOuA#`=WAlc zqZwu3GuCZJ_#py4`OEK6sT%kEulT#?u9KIl5V6b(MTyX&GnHa&{d4xD^QH9%h}a_Q zgH2sAqQil5OiZ(x|L`P{hkO=qj&pq>9Yl&A%j4!i*J+paDa<+X%$%dJokYG``Yp`o7oGF@U_jMGX8) zc}ZHEn7W!ee4jN5;{$RF0%%WHAEUvAq2R9*F{B1$X<=m`_VZQApD}jFhU9JMSU&^4 zS27uYaz=XJ4O0Y5@Fqxzcf*-6jqYRRu**dj_E30MrZ+F>jejSV)T~3r$?BU5+qK6F zEidMV3n5Sl|8BFKYMtFC`t>53GdQSf`1c#$e9R<5c@D@AyEubLQi6??(*E{XwXJC% zWo&U2(Qfq?DmqAa3^&m~XzG=rU*crjY@VvT$E=az?X5H$IB67qel#lEvo-X#!E38G|iI#Th242wNYR1}q<`U3rk}a{^~vg*m>q@#dN1aY=~llpL}S92~+A z(9gZ6v9TB3p1faLkJL`iy4ii=s4r4CM2b12+_YtLBoD&vs(vqh5;l2k^RsXh5|rLs z0m9V~tnNwQgZM6rIpx_GHz2dqFI(0Cm&!-fV^DVf~x6Y4H2Jp-Xmf;J@wn&{f zM7N9<9q|$25j4X07lmEXbnLD{m>%U#9hC@q=WJN%ata$$bt9dx0=w;z+ycbJp>+#C zCngpX)JUkeyxbLi%vVveVJ_YA0)2c+ql#79ysE=MHlP&Z=Uh$IfvR^IP$?1M6%aJO znH7}S5=|R;Pk(5n9;Pr>azc@@@fLr&tA*vwr!4Z4o)55?6O&Hw!(vZhqwct~XRKlJ z!j@7SCYcoIo-*uq2>KFV>*K+Xk82^_N*DcnSJ?RF3)0TIn#2>S zh2jhsaHINRzvt1Dc~;BvJ-QQCxJ$^UN*^bf#qc{5n)JzxzY4g4nl9PVT5;6M>L1`{ z(jT>KC@#Kj;EXx}av#2<$8V%~8!0=&TnchK;4i?~HLtXt*5w7E$dp|G`k`aK&UGNA zfw!9Yb*M-32uwZ2TLDu}BTfpNM?w`MeEYksjata^&t3ZLr(cZyw@A~8#rPAmD8U!V zmU4CRk+t3^(F_skQHC0Xu@IQh7ZwOHMrWuS;)cA*F@S9BGElQ`e~H2^WmBs`HG-rG zET9)mZ!(4lS`79_t7<*^o(OPEgA7I@I3xhuswvFZBhyl(+F@= z{@44B{}I*qsH^|1oGQ9D6AWn0%jyFfhWeJ_?futU3K(Y}dEb^gN#)iR#g_ZFs8}DE zrBvnGFT$KnxUNE;zC)U^m}O$~zjgFHbQo^F3OWBgb4>_x`eb=$)d^u4Y1UyOa;o&Q z)GUolw)Q2ba~RhVJviF|re*)dn}Ez?skNYGXdfYR7~@YubB68yJ8QH)M-$8wxpE`5 zA1|abgM>kY5Xv;^xF%jku~9p#vNG(mE>zBE;aCUikk|_Fmtcpxy*E}5pQ!%0rol4s z9Ceo6szAt{gM}5RS!&6-8h>SNkTI!RvrNGrdEK{7sYv^HHN~ZO&ZuayTRZ#EkqO6c z?RKR>NkdBU)Y_VKjzmGEs*{&r43#f;jR+?v0ogU?bnA<0c!pGUL7D{rD6XYP&S2>B zqX}-_xjq+Y<7~K>>PFRDRCo<<6oxeilM}Z`F3qy@%2hCmFG#XuZ@WbXW!syi38bd_ z8k_3_c$iVZBIUd0Ov!_dn$8kkW{!(-Wo<_;z`(gF!t&4~bNC~=Vm^ZB6GF?kCI{;5 zljhzqhkAv{89dwySKncJ5J7wJB-wkEj$DZMKR;lU^S{*)F{UHa(~62SV14A8+u+2% zl^oSdCtFHZrYZNGa!oDmVH#80x!AC%n7PcrKMbE%^HfI5bz6|pO6!r#HBam0a zpIl@h7{dU;BX6wth^^~YJwj@W9gmAM;>U!k%NzV8>HaPn)YQVqRrk8!HkHq#@ce|J-YRs#kx z$KFmzo|$VQQ-T29obKS3xx=&b;ktK(eg&j-qa|3n5S`eFHGCgp5hF%eHn%^6;Ulh? ziXQb_MS(a&=N0IC7oU|g-EwU>^dk}eDb-HJg`!*1r)!mlxL==kDs7z54$%o)PjGI+ znGRKaku$)zy$ zFEfpc^bExN$G-+pam(xRIl1|W9yoEN*x;OepcZWBg;tIKR1@Z6q;WSgU|1M%{uDXo zWWR34MduZb(PEsH|A@$i(oEfW!!A>*?j%x+>6@{r>3n8+J7`m`9m-e4!h}Tq<_1;g z*eOx*rVR4t(3)IXV*@Kf$O{^8OPTh8s|rtYcBv|vZu>@(KU)oIJ{vC0_vl?z-_*+> ze*dW-$=5zI{T@1n7^XkSWR?k>i#7H-J@81OOg6r;rcLjqEiXZO0jx%s5{oPL%tkxn zJG|tWpkz+*GxkQLsYc{Dmi>^FUEU3|aCKu3zIb+cuME%~R9jX%d(vgCWP8Q%VjHOH zEG-cUJTw$Yb&|m{{htlmAPubcIS@pS1$gZk|BXTWuhZ_kQf8>>x-5twWmt{(#0Rnw zXOqQ$^kH+NjHIL`&lM=?I}n*n)RACwz^rrFWyxa|(8&=pWN$=g%KI z!4q+OoWafASY3U)v(ozY>6@TadxU<63TXqy6;_!rHfgyc&HQ5JdP)Q}ggInoE}By` zZ4s|kUUG)_0fPD!0xTNOwmD}>ZI!uRnbk_c_wp(B`N$dQ%1zTKzpE?5ZIoTAz%ME1 z{Agj)(2CSR|Ka_WV-VX>YVlaUu(y-KoUOu__tY@XE?A`{+~S7Kz4h-_{jq6$du0 zN!2ueJTpSV4PqcvWyb>*$!d>i7Jkbylvg~Rs;b3WHiO-p!XFhC1-+@-TX~VeMX{nl z?Zj2?Z4=L^7}>Vx^e~|81(uir%RTx<)i~5B)7791u(Af`97Yq zKa+de3rnhB)0jM%6OIAf`c6fY9zNlE*g=~kg#CiFB5_D+ySR2^m3`sSPyN1}J{EN{ z4&>GH7ZslAO(8kd?qt3u;es z(n7S<3iut>w9-R3)OePNnwBqLmk`XMg8vKFg`moo^$6c{z7 zqr^LQJhzCfYh6_ije|ei^qA066GGO*j_MtMHhh>kE%nZ`q4|0^ z#ldVi}P-e-v9NK)oZ7gVFrs!bZoN`UMN4e zF2814)iSr8;F7lr<-Ys4JV8G z>{{q7A{>3^owo-+j6Jl7aqqU87?ZR z52>N#I%;;J6-%9-=!ha;khnU}y;Db`F@vn6_u828Ti4v2-K@RV+?bBHdldB>jl~$b~{hVGW93efE^e zt{Nq9^6Vjt&Rxi)@WWjg6u){<#0$r+Q{Te5F!)d*AE7u!3_rLDG$27gdy&IQBV~wV zOV&j3${>9=0fFM~P;$<=6_9vIp@J!Iyq?i1l3qSULKm^d z5>Y6G*a_3w`ozwsUafn7V6t0-yix420183`gmI@hY!5EJZffCe1)1$qLO~wvVZ`j^ zF>G@5w1|gwlWpxw`ux!%o>~T@ab565o$b7q=>!r}^dCLf57!;?*| zY)7+2q(Y>%6@g@)fi$rp8XX+ZVsH%T&)%YZ=YBdQU2-(NN(KHB&UsS7`_{@RobP)NNTNDo!+66`WLHfo>v3oJD+f**gju* zicjXPW5=P_@33xuKu1gdLi-8AU6MEgj`(inqyOMF*ZY0lIRmQZ$`7^8)s6Muwhb+b z%!%Gi;@d||Sua7_Npg}m*!vp88F4_e5TM~a*T^>3fZ(Sy34M=vUKlqs?w)WABLmw@ z=nE{Vp1B?&dk9oZWkOIHBPyPC$HLUtkUz`p;ZVpFACOlmunhq+xBuch^`8$x0%DJ> zQ3TNfS0HF0ES?)=uhd@ViWO&wJ)1W`hiz8!^%S%T&pVkS z)%D48;I$!-d9|Hasw{BBrJC7+&)NIo%U9Gkx=b@g0oI5z8k9mah9H~`x($L2KI1e+ z^Fsz_Y(y+X>?o|LiCO85kbu}&)G{6If#qy=XA$-NkN^({N;(nV$#QiY>1La3N>A?H z4_{YDal!kihJ)*5qY@4q3CZU)^}{z!Xe{T9jEN5*>Q2{*FkgrltC1owE8biUNz0M5 zY@GyZIs0R#4q0hkLZT&FiBk$f6pO9C+B*nDz1>OIb+Z>?e0Jvo4WSHKezI?l5j#~D z8K6SCD{1}d(v%v{DUSv*{{oydi zK9zkMMl{T7SS8`C@ie86@3~+d6piF>{B9*(D6JykZ;v5vBkV<_|joS zak&8tANMcE=V0jiSMQ3TBd`z}IXV6~G4_lWlm?Qh1guQfjcHj?@6Nr`)8TPFS5Y7) zf>NVjrr2|qm2e?XNxWx6{0ib7&jFt!*xq@(kl}fWPj3 zrnsH04Nn;ko)CE(2fga&v)s&aOrMWq87#Ps`RiG;OY|bb7v$Ax?t|=;Hrdeg;BXIM zpQURM!(H4WY1KT-80sjNIg(Y==s2sD@6^Hd_*{?^5t}f(Z`t`w$A3J<hM1415* z5rX~hRYkXAB|E`gLqTwPM%ft}3zAP7S93f!Abj!3hk~I{2yo1w&xWE>M&4f|f+TU! z*(t0?E4X&2lCC-0uk=TtseKfi#0!6wKQ-Z`n!%4G_E~OEoo%@rMf~-_hpABLxYoM5 zT+x%XtMK_&h&-E!DgWvZ%3djp%nLULH>RE&_^*0h#%aqCFtG(2&a;t^dMq%gvF92R zqKcxbP#-~{p0&Ow3TH0YULa5yA@FXYg7SZ24;Sc<4>!@2mah|*8$Y|CrgUshFShdY z5bv6E2gYgJ|1cBd5y19c`l0C^lp3X?dPSXDYooZD2={hAudAWadx6ZYn4pe!dSNz z(^J!S05i9q5Kn9 zh4}KqqqAv?NvYzB!9Sd0&>{ZJnc+4}QEtGvnFH|vzy5yxjWhpq5~*ZrX!1jgGE^1- z9}W_)^b<&}jxvQ^a)lStpzvyhurKo{8M{=irD(wA$EIm|VvMziDWts15Fg%nsZ50k z`$`j8P)idW9i}^&^)P?^a&U(TLU^jzUhc~dvrOgMYx_2#YAaojtIQmxV5``AGwjmx zgUJi>cbOyc_7G)S?^OoS%US&xx=|9 z6zfgGKgg8eVxk`j_F%=rG4mm6`5KbWnb-5Gx;)g8J!wztEn*IQUG@q_f1WItD9=E@ z{Yj_2bf53;JcY~oVzZ-2TSXd;t52SDTIBq?uBv0+t+_;By=4T6OKg#(LLi6aw*Tv} zd4j31#ULZQ0|c`Jf;`G#dt&S%)@JE_+n&m%w!|6Pm(^(Hc;g<&((GL2(fjB&k_*k} zP+0bI0zn~18s6FGdlYkzafT8KFUTv>>T0+zXc9FzCz`2%S!p~tM>(oh#7k3RS~2CeF%M->a9M|I8Idmc~T-T5SM;tNPw8R`9X z%DH{pl7UWEv)L>ST{2hF`5din4_DTKHU`lVQke;NROV#zD52Jm&%1VcFgbx@?5S&v znbGDxJd8r!mBHlabjA=wjiCkEx}9z>vJ6RU(p(AVFIe zI984P2@;r}Ab>XhYfV%KeDFUs(KBX1s*3?F@G+e0?ATSe;S>V=9W3UCH4-F*pdI*3 z%9YGBa@n8@jpC^74#?B&E)~H*sUZ^Z;p>b?+w-$8R|uIop@5el1sMP9JQY04i->wjNZ{_f?(P7V$A)ZZ? z&fPaHHD6OOTS~ckq$o}_zPKhRG_WDbcQr6q=B2RiFL;F0fndsSD5@!SwQeRo7t{VM z)j~})>eB^^QR#2(N^1;p3C)jlj4<8uC)?{^mMet@aCH~>{NDB|*jrdxI9fQHs=T)S zUX}e%_QG?tQLd8#@Yb%7TL?8IxX)o367RQx*_J@TN(e%=Z<1NtZOyB$i|my!o`Ue8 zb+jX+U{{!YNtfT@_v3F}<_8J4-CS$yB=*UoB*#jC@Nqf6MG-BK2XB|ns0!GY!XO9) zx2~ETl+&3H@jA=5w|ZW;X*(xm(vB`ASGHJN6rxarkE4Cgq)L&a>$UWBAl6*WS0mwd ze~%7>??zDi$cJrocOAOfgxFL`Pia#M4KKEL=;R#gUs%#rWA|)@V28Fu(DUhD;D1G> zz+yR5P~e0=iNls=ZLiQ&9qE?mXmS1e5Y6{Q5OL@X-xr-D-$iz&$&-}eKC+Z#w-0BU zyUJ%M($a7=#_G_~F6;QjX-xo?ZQXl-Gr*SyN!S*IVh(ZO3kgR2 zDQQ#uyF#M`AzzUkqDBrCqm{&c@}+&IS4t}KZswDt+gBN^#mNww=JN0`TLG;6!!60A zaRNg7N}W>~4{aX&rJW`-)rwClhh=PYmw`Cy)MbBTr9_h z4n;eObyV4uzsv`#J2>m5z1|W!Zcuwfh7xbB=NYt@QZCF|P`5)8pBP-j{%n|}N6!pL5kWwPfQ$s=1A)HJG9+TAfPFTXk(v?Ew32_RUFjo3t z*C%knSFf}Q`irSybQN(!UnQx=j3gOJ~LEr_5g zaAxTy=DuZ3kk#w3BaL9NLy~GfZ`$Zl*WGEkKv^FH6dV+2~#&u$ERw&Ow9eQo}qQ7nz@f?-X)nB2F`g9qK}%TzN5FPT<1`zd*7;%G$iA(PSo? zd&l)eU79C#SH=e2w#HFp965BpkUmr#C4)6$4^7i{sW4F@P`<%0y(Xf|*wNW`ZnU{% zzD{&uV)0bNYX?nNr@678M|#~AVw@oP&YTe@&^qrGk*dT4K`CZBB%IU%$MWh|jt z*J?~fIhS@gCMVFuoopFTvYX5bZhk`BcvEvBTE=PGav?J~|5crc+jwPHq6y+1Zwx-G z_Pev=7sUl;P56O`{6T9EW5jVXYn;A=`belTAb?Z)BPq_L9STs`ct( z*jmy$$%lCK;jwTj@E(TS=%X_9Z9Mme4XAQi#gc?h(pAs;o-GN>tR3!hLC0G5SGt7f zF9%{!^m>r`p%ZgFDpC5T*u}?&2(hX<3y+y=RR~riG-Mk{(2pX;fe=R~t?d^a%_KZV zhVQWQh^2Mruubl13L7K@^vR;pM_!*e0FHR(RBMJR;%elw>rXMI^+_uJ1v_C->`7%~ zNe#1BN|mc7@`9A+X_pO1u_436iKWo*ixe#cMzmO!z zik?r}!5t}htU=~XFtIq0WyBmJoV)eN=}|ZuB|^k~h0jP+h5AAcU8}(Hq@NR%+1lf! zg-fn1qI(oiU~T|zweO7WazgVNN0hJEwzR0bQN6f2#jCg_?$=*KcCAuAyX-43ma2=c zte&eI6uqFUek*GwPf;hXyhm(J;bbGVPXtBt36uCWs7YT=UbA+ch;mg<4_8izqop)W z|NdK1(@FRZUSX9r>#_pb#EP{KX-(`;w$ZaO32oa&Tb48SskNf*zxSHM$GE6o)htWA=DT2Y;?WT-1bdg zjLh1^tp5Hz?~@DA?g&h<+$!D7_=;La-Sx4hE{ z#0#;Ve83_Qf?75!h)~e>k;KkK4%2%zw16ZnYbH27DJt~2x$-JS zhLJiRQx?2LQToZu!{WU?SxViq>D1F{EX*uoiW%|wiBFTmGBB+2FG2=uPO{2MUvwUo z%Q`!eqw(@@^jj5aL?eg}jp;{Q~p^-SPtTMBQow^g6w_ zt*6Y-RrR+$FHQH=_4C~>mtKT3uYKlD;nCont&2_V6zBiUq9aHwC+ML^8(wjF3R^R= zh)`3xGm&JME6m%@PWrM!LkJ^vIEM)_j7-y!8e`+a^eODzg0CD?%wQePVCELimq|T* z9tc_uj?bL4w}yxqA4gu_uB~2ka@;+aa^~1bWWMr31E;=QEBg2*M0ID4*MF?N7;_c> z%?V|a3cP`eT8SnLL<6d`2im(+#`sk_nT}pY_$&cP6#+%9Vi z;xKWQtcrj>#Ut{7gq|xvGVq3>Hi3XOc`6oB?iywf8Okt17D=bugeCu32XBGaRN8Qa zkoZLbgV^|_VY%{4<@LoaG(iF_L*v9!92qr4iiaz_dBahN*y^&7GVQAu>uz3$WqvXf zmHfk34wPM(tG$>O(~^V2{O?TPc)5jYWahV~w;yo~OmGy)=#}Fd8@1v>-zF#krM_6E z8WVWa_VZ?|OY{)k5&A=@8`5ENYn~{v&Y;;&Ew2gKQ*$phE~-VNX|g7l63A!?jPD5& zC2+{b-0mdw|=F8?GoZES07icht=I zTfB#!&_m5{rjT)mPd0gvxsdR9)NO_5py(_lxI>YJKWiaSKYIGU1#z}Dv_}iD`YoYY zK|&)fQvJ%ioMMNrVJQ_pD=1?t$Yb>uQ-s00+#(mcB)0_9D7iyIL=-H!0q}&V&WogY zt`ZHW7Hf4JhFKxj|NlQie2(1FqfUGt@;(1X*=J30pTxz_-OBA8rq~g_vfO+PK34TyxpYuPjfZj4h?eCiO)9~3RD|AOI zq&xn~!Q7DPIpUDzxc+fmd`Nwucq*;wORq3V{ z!les_1d37f(ghJ@3Cs6oKjh9Ow1GPsfR^g9sl5l&bWLQcAyVrkoi-?aLB=E7Aha0# ze4Roi?9$&HOf5KKmdsi#Y1W^++ssWI_9|3uafB68q|uj7!uUOjNIj)({wN}uBT9uI zMLMJ=?nNUQVfIs*0r=!$$z%#G1GjAwhNJpa%~WG&O$7YD>}Ok}Njsx)PV>moUFc2S zlH_Q1d3Qv)rGETuvpxfR(!LW}Ug@!*@NpuUEOP8aR<=V{8>@%VAo9Zt zbaN!+ksRH0(V$U!-|9V6)LnO8DnGHC$0XM`Rzdqm>QI)9$g@Tyr$huyND|C&WT0Dh zqNX1oe5BB;K32mS%oB6;M>4*NYPrr&yu7xnIt=~{*GvCS#v=eHt5?OY-2>-E!#G@_ zy|SOZYL}xvm%)qCo+%|i==T06Dl}B?D*Rhj*_kS26Dh9Ha%W6iExvZ^2Z;rJ;L82r z!l7~8j`*7?=9^2FJVl{0uOZs2p2!eV?Pz4LW=TTU-a6TLnq^a9o1Fp(=0RL%I%5@dd9h= zk{%Dncjdt1LEToXBQw!n=XK7XQOueP2()lYC5beFe86Mr}F{ zQxig>y8-(C7KyJd)?bfFCaG+;AR4Grs=`96xJu4T6SR|G%bMxoDI%zldB?LSTQR5S z=@fsG!K$yPgOd_x^m_Ar%G(?Gczs${QhEDQ(6yFIkE-OgaH>y94Nlmi4AVspnzt3! znTS|S^YRR@Ro!YPq`(+f40_bFMo2clOZ za)}|&N`$vxnk(Lu>0<5*pE3S`k$3OXolb{vI#-P1`Y+_ypO+^Q(QSo$Sm9y%7gwy> z-AKv5d+GB)c})BT8!b!p@^&IwQHA+UN`dWVk`(MS!uI@POh(n=^zPEj0^0~3hBVlx z3L)=oB)p7RZhc_L-y*96m4#T9iy*Zll z>cyt1Yd`7ZDsfYKX*gShtMJwnOH>O?pNKm6m}+oT%{Z~{X~aBNjm6OJq;=QQycthv z?OO13WI-*$fcrti-e&Jv&Dk5uw8r%m%QNIM-w1q&lnBc!UH29xWZ4py5Lm-y%Cm%_ks;13^08*w^dEMf* zt~CxNk~L+3P%6u6?6{CrfEJQ{x@=YVGVN7Q~RCgi9m3gb&Z~R@m=` zX1_e_?9hWWz}xf?KY_(|P4KaQiotx!1ttwXE{|nypC~}$?vx-u*Qs6N-lA?g5~~R z)EAf*OV%IG^M+p0U7ACg;H|xmm#(QgfEZAU2$j+Nw#MYOr|MBEw+Bs5w0#W;PN7*s5v8esV7a!XDQl8 z5tR9{atfTTaKCQnxbH+hbyqgWDusH2t@FAxjRAk9lgC8_{#ojYrGTJqh>c?Xm6yj+ z)d&y89ER@Pa_)muuX|eY=8B6xD+eO!4YH&Fic)mX`+h+pDXON(HD!bo@ROof{BJzO zjlp})Qm2PCX9H%I3_+K#S2No5W`i_~XFK$jzTCoweLU5|3WrIkB}CZeD5u5ifHB1v zqkbaJg68w?hC6U609={N7^FQcbC?Uf8L4*&3HE6)s_nSrV0W@{rtbvuA$CoNvE19* z&&lRPymYv3JOu?MM8^mHPms{z?O676T6^^>V9hF~vfJr8@}Lgil@owm3Hl8Mwi8qg z=w6mPCYhjA73!JW#V&PA9uYN%Rx^YjDi8KOjgf1=Y>8QVlSToGBg{~w&pNTc(!uWu zCdiyf#0}n#-|&j$22a=)@w!6>s3?~TJv`v zitvRPYWuAL$qkOMfv_QQ)u8+SJy-}Ut)Kj^t{m3 z0?)UEuxAP6(aE#I1vXr9DOYzppJ73)S4sSxp>{xDO6No|qRX`j*0ZB15Tb=9(hb$Z zXOq75lZvS|)``~5$?<9#r?F0SjHe#F$A@ifei8X99(!M;XE>MZ1M2A44ev}_iFag# z@Ujy|NoQTGx6CYsc-YiLyH|R5jg;QF+$?y@^UTP5T|*7d>F>jH3{&kA28gxT$0rt1 zwBgo_gl^=v=dV$1)6ztSXHwJCs~Bhl#<^%V`Q?TeTaVVP7 zvR_l>q5yuFcEBqr@O$>l*tp1;I-6Sl&qDfL4FBtziHKXV2CgggM2XJ`e5qHOuPQV3 zgHJ>d=_0qS&6W#|FT)hYHB#5x7kwVWOm3ZIzTpeGnvK+}iG$G_EEbCQ*fO$%mo?k! z^>_mfaxE*sBYF>M}aTrSZ(Jv4M&*WFfXXfVEc2Q9tNkmgj3Q?tP1(JTa0!c zN{nzCeGL^r(zlcuiqYX(Fk+)eBMOajwixahX+KmPy4jAB^Rici`e>g6y0b@$WW3v+ z^|E}mZo>s#AfM0}ZBRi>L(*Wi(w=VpDo^bbm476&m#+0>E0eV+=fkxHHq(vRTXlGv z`WPL>Byw;r@(&77hbhvgZR6}x#DO06+$|KIW6tq+-DlsqS-E z7a_Vy`C*G$zakk>y1n({f-=TInw@zl{VeQR;WJz+IKH5~puYo2n&L(K_J z^Nx=q@4Ss`Pz03^_>rMXAC~TRjrw&;oy2n{r8+^3CEj0N&VJBT)p1*ts2h!001CW>L2`CyE zV5Wg*=8YNqAHV$P2Q&x}tNF)+1akDvjDyIEstD3b%8Ai`?FRuITtAvZflLEUkBhe{^zpt z?|M!06ABbC*?)y%_~WYcZ+k`j6Q0Cx@xI42{uU1JC%B;Bz?uAmcz#A|{|(YNBlA0! zk^a=DyMI73v^6w-VftG@s-FOPfQ{>~WbmzP{{eJ01yY|o{1%t~CtUykCtN2-i{Gms z$xq;8zX7-ZPoDPQclKxbAOrL7S4{ZkIQ^Y`@PF!=^zV?qZ5)0FMfMX^;6FhD2GH8^ z_rnC-nE!dctrC6zglJ}H>}X^E`nR3@SrV{-t^OtFzK!=EB}?$5hkq=6(!arTw6U@L z{cwMlMbK}s{vW&5@f#@T@7d{pvsMFa{~sxQ1+e~U(tkHm-x__B8`0DM-HZNCgD`#& z`lFr1PwoEg8VzJA{Lk}^w#P3q{%Kq86qYYi4O0z%?}IROMt{Bb`+$mv@o<9DC_f4lmf!pk+d zVG>|nx&%7L^aCDv=lYbv{+fcYjg^&+^*`Z%+i<)pX}>iB@ZkV_p`Y*xfq;cy%|Q`U zAajVRJx~(xPZ>lct!}N9$w08hKR_xw8akS)7#dmrh|2x500^c;ymJ7^Md0)72Q=`` z^%+q7HToZn0T{&i_gx;XZhiR~;5r(x-xBxdFERLI47on%;r{>$B%A@_gB%|=UlypCt!iz{$(Y>Z~woL{`-NRsXdO#0PEH@pz7ZO*?v5^J~!R}7iwbPcZh#a zR4zb`{M+~8X+VEOe^3P8xjsdo{x3xTSo;5-w`G|Z-|Lm+88?i z>!HDb9ZpLFLo);>;I&QiFt)HVwEWBX{+?pY;Ls;EKs8+fe*Qf1<4*n!MM+UnQFd0AKL!cd zMFkrR>%X%0?@4b6iA^;DWE%k${h6^UXa9=y-%$G1YU)da?Y#m_`Twu8YmbicOyi#r z)u1KBU5Un}X+&35<93cj3`0VcNOrr#gvn()$;4zv61%O;u4pP0$E_}PsR&J7dsaA9 z+_pWG)zj7`4qbJr+S9ETK@jZkok`}K_nq&3zjqQRNB;W#zUO(L%lkaY_E3S9%qhEq(NpGq>B)6F)?;ZtT8786(42OW|_NcBIZPLt9|!Z_os z+37x1JSCp^KEp5%p3o0YKCGSz|Cc)R(DBpv1WhuI7Q5`Xz?dmMUm6&LZl^(I^eMzIH zBA&Eu#g14=w+54G%XR9?pJ&a1-A}-%(Fx~tFA-H;_c6vjf$-gl&zWIgEIM>DAXHJl z9IYs?Q?|IR51)>7Cu7IQ$6BX5vd|;)zQc)~?@g{adUZVt$aUQnb5CzMZl zG81-YhMhqc&rhlI$pSIH!ECZSAd$BH7QJ<7JSo}2fJ>Jt6(5Rm6Fj=mM*iyaPv%wN zI|G1@arXR_I#U*lktaqc)27M`V1pj*UT4CGlOD(j4*`kH8B6@7Kxf2Kx9dVZsKJiH zn@eX-A*%}Kkar9eVfZqC3FFN9I6tk=Io$D}`&zhSpF-B<&#my2Q+uG^*{~+P9a4Y^ z0flz?W2dDF^j!YtuKSxGwosJqUEqwA<|3~*fFudG-X_@0X_@))rkotiz_dj>`iDh( zZo@cY!AyJQ!rMBm1?U=N8E23HV42119<(`7vhy&qT2o|Ex`TDPMu1N`k|RmCJ`TNN ze(R%V)xh&{ur?d4Z49NeOSL-a6YV}eG|rS|&c$+&`&eDRop0rjtliHn!iI-e=CYo< z_?h3l+5=;&I^8=DZNDoqiZX~2%@!5Fo#>$Vl;6)=G(D?(w*H%t0*rqQ3X4dJX80rt zns`&T36oN75xUOW-)l7r_)&=ZwA%!}t%F^+QsasIF{WHj7x{4W6&nm7d5SIpt*7b~ zITDf^QKaK+n#%#fr(;~EAn;8=Y(Y_9{>yam=w`{K1U zIgZ##u>$=0AKj|Lpel=?E_yt+X3F7@%*wGB7@;Z?R=uwk)i(yby4-gHe6g9yj zNs>LIKDh~mxiL4t@Ddbt5rK;y_ZwN#JR>b;oiRBX9N3A>${WMH=vjG3yDSZ9RFdQg zGb5plA6D$CQA!}l$chMEZoHT057}F0G|$c1czT~l!SU&N^5xl* zTm+o&m>XXI`QT*;69>)F*4D%+N8pLae3Bt~+mlbh(pr)fMp;`_ksJvoX;`PvMS?V< zb8mA@CqpFA+rf7d4v{J5k8mP75Tq5$F_MjMVjpUJB&gd;B+P2;AsJ3d)vZL1gQNhL z5YZM3$)HvnUx!O?1vVWE{k;lHpgpPWazEL;_w=zd!)7ObSe*f(9B7x(G!3;C zw)`{pPtZno__!ZLt|et5(cb$*=EcJ|v(cxajcomQeh|4AQiV(#&3ihM>&OjYqw}`m zf)10b$v_lW?=_6#NRJ!SjjjR&|9~H(IiFZ_$4x_y|EAANiBe>vKAy zmv-z78GnGu)6<2fzx&TAmhV92h?==DkG|leL&LlGB)OnW?a)wsDXPaBq|B@pbOU|9j8; zV+Hv5F^KLF9t$F^+kO-I1g>06IvUY7n~AeM=JLJrW*714X+Wko4BbhVMHaxnF{xrB zdLl|ZC}`vFGF2Adm~BVf5}WYsHjWT8S0}Yui#R(MGb7q|&Q0@=McX!)Uij@gvX7F4 zA)xV(X3FAYw;;Finp{@<{y*{k#}Vr2DP&NV9=;WOpVA#xN3Lg}1;a69TH?3^upg}J zF&&Kdvvi1J9qt=U&1#mwTia=w{M~=AX8&t7Y5!LuTF|MyUtYt>1ZFU@ws-VGy+7|Ie(2hQPK=lEr=mK`k933h{X1;63nytWX5^nR>rdc{~nk5Ni)fsA} z^X%jz9h$M`f;z_`)xJP$3GGidBAwa6FhDxCG>vE&up&PR#${FWX>obm97GxgS(+l?izIIzNqA zi)1sU7dx5w6<3b)Cibp;>@^(P>gxXO-*?u+A4w%guLPexsDn*8iy#d&PuP?=5GpDI z1w9uEJElY7j#&ci+cQsg#fr7^03%L+e%Wy;Z2fef8uQ})02ouRV0Ksb2VeU^p{@SA zccyQ>i0?<@b-nRb@7tx$s_%8cU1gI%H9fAzZI1->b5IRkqdz?>4PC#-f_VjwZGGB` zl7}vTK~eI0vPU+G&-1zJPUDbG)i$*%&{ov+#NZa&U_kA#hl8HlS#Rhus70q93;X!7 zIvg`^>#^uzv(Lw>*d^7CIp^1Xc2#LBhkY7Vg$}we4Xrc8>~o$f$NmS>9Mt2UtP!zq zN~#PiA95KuFHEx7?6Zd|cEV#Gw%37m9o?`m^{MEOYbDS{O-uH@H5GdCGYM$;ujlnO zRwwMsSt@jBKogEZdg(;;?BKhZARw$;L+CN4|+bUalZ&{IR!|tMJX+O2Uhp zvh4NUD!eH~1h0FUH>)Q0>S~qfbUP7|uiwcGJbSsb%GRlah^_u`s=%!In;_WBp;XfG zePl?zEJEw5C|0BF6*ekehX^hm*=6O$g9$Qop$*Hz-qfP9tn4dfk-E1fVQe63L`C@= O|H@ExKld7H3FZHYl!|}= diff --git a/source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar b/source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar deleted file mode 100644 index 8798353f80c2c6e751145498071c9ee23a092eba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 139721 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∓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 CvFB$1 diff --git a/source/sample/JavaCmisTest/lib/cmis-types.jar b/source/sample/JavaCmisTest/lib/cmis-types.jar deleted file mode 100644 index e72980514a3334d901151b4f5ec4fe88856de7a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229044 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

x?7o-zzvbYh8WJg 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

lTsdod`N4YNOd~zpxRbR=SJH8j3v}!D-3xf!lHN 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%0D(H|0K~= zG_^9e0Q@tMUH>(V6aH#We$MkbCprDJf)sZIaw2Jo)NbE?>EiXF4iq!B`M$dPC!*F}QD| z%s<%9D|y9;1EYI2iTH29@?m5@-eUo2&K&3#yY@4*cNdZ)@@l6|YglhR|dXv;B65IZrf!=5wMVF65O&z`sduXX^exUp{04Kuc%&kj#_FICya%k zdkC7d)5ER!fnCZyo~wh-BCs6e&vw~>LhW=59g&8E3+5;idmu_0=Am>H!X!)-U!#r< zW$@GA7|Zb@=YJy^6);>JCJ8a|hf-7{Az~)WdoA<1tCYtk=|DBhkIw2ksUA1rNbrfv zh)g~NJR}-Q!dQt~Kvhbz1Y$Rf%Xdv9LeI&n6$lPz5Z)oW@%T*8J5xL>5C0;n zo9#>PrpE9tmWg~Js$o&e$WM1Xi6;7iPkI=T7TQ0M9oLqV}9 ztp0h9;#5r;$$h=1DkmqWB&RQ?B)xiP4l^xq9YCPsECUfEfj%8p@dIyv`{27$TUVVshh)g1(b7e5?gSPKvBwm?>J> zUyUJT(Yv_Ogta&EzDe0l`hIZ0UYa3OAQEi2dbYfV-x9A><)jnDyl6FT-ldWsrmvv%O2Nb> ze?042xWm3sd{KcuTFtb{D7a1HVs6(WV0>saZSz!eWo!a>4n4^VrU=u!Fh1L?q3;$M zO``8M*m!8KX=4bzjf?u}_~~#FbJKC!v*;P}9Nl@mP#psD?gQg|WE~z`pg!BeM;k#! zh)wGW{wk3Kp~Qha(-PR`P|6R47DFOAD;!u0^2E4|u{?ic-M8HQ1{`zHz0E50>l?X+ z#n?b?ZnhSIg0BA;fpHeZvn@QQn88jeMW|vDK%ZsGj?~5lA*Cb@K@fP~Mj4)y#F;3`hQZ@{~Kq*|8bJImA!+V<6npBIebo<{fn+XA!b~mhwiguES!&u zdhMJCod_^^SFfF&#zb}K4u^KC(SnAN<}?lEN`uDl3bK=$k`K&^TxUQYNfH?A{(vvM z&xPY~+qBEK6CIHiV!zC`E97F3!LeG_ghsieuJ|p5Rs1SQAaIj3!khSBwCA}tH&Qu) z@!34~SGu@}&Mn%*eqo1{^Der$+BH>iK)EJ5m0{ZakdEf<0R}^Y9<23X3e;08uVK%2 zgjBii7tXa@SF}(P9p)HqN#vcq z;50&W#{BSmoaJPKwBlr+>Yt@K0hWyD)whs;^ZN9)1o`seUnF(w@_H2~hcVd(RU4{l~QslG}SX!;Y~|bpR#akWgv5 zCmacgwF*SaL5_+jI&2>6OFSeyyn(;-8)-w@3DNvWb>2)k-JE)t%Sb;zgZ$aAac@Y0 zHbb>B<*OH|qfZ-!r%N0-U)>z4T1eC-5!DEaB7+s?wx271`(|Pu*h}G1 zznOskU)S+hbbdOU*gNQ1IoSVG1Q;u6J^PoKA)nm!VLWeNS;DnGA^4}7U$nrEL}Khx z?YdZbc?e^^BC&z_nbK9A8bQq#_*EXlqBvBYZts9`=PswH{pHx?k4^6{E)jJc3pQ%q zaZr&M53LWbues9ij^cP(dH#2)|f0DAtQE`Hw0M|!l<&C zSok!4L&qYSmu|{9jB}yylpZ1&UUybk?EfEW?--@omURtghLvI4wr$(CZQHh;VcWKq zVcT|w@x{Hj>g^icRrl@c{{4(+pEJ(dOM9<5XTS3jG<(-xP&9{XD-EhMz#0xa76<)9 zS3yE+_C+&F;ZO`hu+*>L0&^TjEx)D7)4EMmIoPo16FEjzX)S*jzy~~A5;~5ED9AA; z4|uZgt0Q;Nk3SbqpjK$-ks!;sd6HE;-H})fA^i+ZlWkr2tnWbM7e*)r9n~D()kG$H z{VXv&y5H7qB6L(5F=;QX**z?VdDyc?*z#S2TZJm4kskf<=13t5!PgB;ag{P4RD>? zrrNa%a0zw!u}RQnb&aK-6wVfRnQ#}J7+3Yv3-Gm#lr6_53z0Q1AA66xGJPDMvqwNa zSR`U>xckpxIQ5p^r@k+bIsaRaA^O`;sAp|$^H=Qpuc9LR|Jz0X;gNq-27dsW{@Q*) zaevOB2AhDFvN0Y^Hv}~$CIoJSK!&wzEBTAZ@rV0sl-`@KKpDq%T2wB{-I;6Ne}9o} z=teM=r+|;EIQP8!b{NzVc7fAi?sMHw zS9=4ixu^@c@V&<*YkN_6hf_)odTc6T%*=Q>@Lv3CPMs-IxbY34u{+slvZ1^*T;)7Uf~XR(~+WZ`Jj=^HXt!nV*eu*9}F zaJ7$u;Z zphU46MVI%(1+EhZjSI^Uxt>4>^)hk6 z@ZDAi&Mt^kRS@ z1_OPPtZ1pyaY$ZW@&ZA%jVZ@qMRO{&1#rg*Y9|SXL=H-2`=4)M6Ah!p>~<`61xm#< z#N~Uky0^^Im3a9VK_Kf2&dM$RUF3rM#4PeO zc>@!VgM=!Solh5S56+1^1R4Y``2mI`Sxd_$I`M|r@R{gYmee$9nvtE zvDu4>VQdbd6||CzK%iKd0Ify%8|GmSI+;h(F_j4;3aMh*J87@u5~ODacG9?1gj8vv zK>wofyOb)S>?zP{30Y@ZD|$eXu1*4ly`lEL*Z|)vmLKTnC?P2M{>%3BNaKSU!Ih zBhgmS=eU#7P-zP;C?1y8Xj>-dIWT-9_#yq%1eka+0D!|ie-2@5$wDw{e%UbWZ@0YA z|L-mTkD|FSuKSPZHpG+Cou!;?kMJ0v&*-m<@)J{8UsC*T;^g@gP^m7IXxONz>K2(?wX5k z?ln3y2v%b&%UO0h!#=^acYF@#qDGj4RUEdP0CnjG{af*!C!?ds1~$dmXu{n zM%3eARFs0q&Eb_~X`CU;?VAePh$WrC22FLbFrK4o!>B9)b^gdS_b(+q1YcI6{adT> z{FhewSMU0VJ+k7YB>4FdgSY4|lD$@ji-hihT@78FmwH8T+OJx8+QAwxHHYs z?!`Qu>6q|nmJwtYf8;x-seTXb&A(b~KQ5RxY-i4M2*e_KanbFU^A3e(yW{a%MZnty zi7gy40s-_myDr8d_LBxCZ-UB)^u?1dWwQ(MoG0A`)tRhlRZE_LG{sY@?Sd`SXUf7zhH-+pS7StYgM&`>5}?nje5> zE28CS0ot#%X!GdZ<%<)(`WGd`*LKYI7E1IkY4jH@Wf0!i6rLCFx%OnDS zYZB!Dr%4QKtgQY^{v7=OxQf9akTlCbA!+|rukmk+l7GC{zpf~3W^bgTXK5+$e*xeA zswuOS)hscT5V;U&4B9W@QCyrt*Z9wtouG21a;fyd6G0?>iy)=IY3+!kHB5-HV#e`d z!SH!Sag(c&0|klF0rSa77raeBp2?TY8n zdNM$ewk}{EM&&BOUi9nvc{Kj4m&p4bMlCe{ueqhB(K$MY{^8$&PjyQz&y1rXw-|>IkUV!$cD`@A4rv_ z&Ivd4#b#4*vZhj`_V*XXQHXZbA<#5e8lHGG*t;=<-eS&BZqy)Ac7lD0J_SVDzWc=5 zeUbcxb!)wC$ZYQ7rJoXV>=q{29fb)LyNNbCE{dHf)#wh;L%J947P2Rmq10Go1vIiF zn8q48L~JsbTk44=6Ug+g&IiGEQaQ}=Dt71os7EdJT#4Q?*+{-(!BiPGHosC1%0DDnHe87uR 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

=8vFIw-^L_2xF> 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%0DVeX5O8K} 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 z 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%0Dbd$CP3pE(3NVv3?yXY8IIA*s0no8B>#akE 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

YNUxNLQPIa2lUHa&wJlw67Qx82ia9L zCJk(H?q0TUY~Oy(LQXAPrV*FHdp6jAPv9XHIT^+3O=r`)*E^Fv^Y+|9WPSbYK9QQ^ z$oneHPC@idWCahBL|EE)P$pWGcSFGxsqXCn`un8*u#)&pf1iWWKiWwC`J|Lg99=Dp zzS)`oWdmH2+M5&B63SOAM`ZDZ$$vjIsMIW8n&V5pm;yYO^3g<0&lfn+ytF+ZFEW*IzCs)9aw zstP??ZznPXN+v}9k65rgLYgBcMcN8{v_V|z(Y?w*Z*Ww|AIL?k`Q93e@{su`Cx;U+ z@Y%fyj?b#_JHtwjk6G~9!*0OO+03^-06y@2@a#C;Y?Yeug*?9H> zx^vAs{o*EPTifZ$X$uJ6Xzv#PdgH0Wk$a1P;d=FDa`S@%2-{$4q8{_&C<7iNaO~O^ zDNTxm<$CQp)Q7}89&$DctV{;esY(rcCyfA~m{R7dKPs%`$JcT92S8#2;o82k3l_%P zvx-F;RW0T&D|1$SB)gGEreTI^{gapjLz9hhcnc*9+7^*0-?OGProZ-`@#_D>gOg0y}ytAmZbwrt9q=?Gyv;QKU=BtLJ}C+GKGL8(M)gQMp) zVQ|C{ef=m*sM$6CpqhNhYKL~&*#EIHAgoGY9TUv{y*4eaR0S%PGmhmM&}0GCqUPlg zR?NYY=e!~sM8AwXn+oRUdd^9E%p!IeqR(x7&(OVY`kW zM_(0a+%8>l;5`+TaN!~z(L`$h#`=7a7R-$DXlr`h7R=(BZQr-5G-DdlS<@S4X6Cdt zV$o4T8HS|{_fR-LE%6XyG8Qlp>jIAV3!1iZ)irjGfEA_wtB=W;EI!ADw&`PfI>tE`C=$Z zX)|kEF;B}R&eRcO(nK&&9~N9B`xu)YG4fhsSnxqMvQIRiBsBH|C5v4$yE4Ju_%$ky za@5_AHdJqPuMm1yCE%u+rntqt*et43*>GQX-~wnJre3QLfYLKqvsx4?R=mvrloKOS z(4%^b)u|9!NDENz4Bsh##__G$r9rVf_$DIWRtG*QzyI)4z9o|;ch?)rxkU>wJ#*k@ zZC$&xdd_7Xp*`UT>MYzB@^o=w+3m*!G8QsT#6W`GO85s?tO$I?FqYs;<#?&OJY!r*VnDsT=0$FwS13 zrN+zdG30{TU`6X=PxFLvH9MWTH8VVV%h#GWM=PFYLiO6dPae-Edw?Fw+lmjh3Ezm9-A?9?Fgxb&(63p8b!xgtMs)!4BMlK z3rIVc;Eo-?r=^PAj8-X?jDaPq#~~vde-|woi;5oT!f~9dqaAzj;j?~@;_wc$@e;w@ zhARdaF5%XsoCSqXq?ynL zu_s_#s=1#bMur&z^G3mk42D_p1-E)rQFWl}6!fft7}h!gln*UpYh*Xb3e zE80B0+CEufh#SY{)_zXaS8m)sliHWNPWn7*Di#sdhAjyNLQk)o@r^rV4Tt{7(&AXK zYDJb|Hz95J_&X!5T;pGU5~#nC1Eg1fY>J?ZjcTV+VvO^XBnC*51G`%CJX+Hv3Jgx< zxeJ0z%FOllUp*t&=niE|U`#+hIu3PA_IOa=|Iz|cz~CRDe1y{O4Tun)Xdi@x^+r6q zsosxdq^O!;A2ly?5Z4dGXcyUaX>@R`ux};_GilU$e#ca^Lu!3~>7ncY#eX>uPtWzQbK=nNZqK}b4M+XC7i(CCcira`r6 z5Uz-94Iz0)I|;^<3xm&YjN}~O$7_7~`pbbDUwW97-KuY)aF8C#ZEEe${4u)d4UC5F z+%EDLQ#QF)j4DdJSz?Do$$er~v`S_4f~JPgXP6={9aPWAk9gwys@c}t z`OBDHyf#N)oPAzb`Bxkb+VrZug;~svBd0^RVUzr;u6hfT?I2w=s;_;~qPDYI(Ea6M zTU}9|irDm$V$=I#BFhdt-ko#DqgQdJ{U%BDxB}K7>oi+XgZY{|h=L=wf00f3l^k)FIrz$BsV5 zR>tQ!L-(<#&w_~A>v4u4#P-pDT2qA!CX8Ff@*56E9SD

5Mb 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�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 m;&LVp!+<-$wR?M`Is!NE?E# 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