Compare commits

...

15 Commits

Author SHA1 Message Date
alfresco-build
beaf83a008 [maven-release-plugin][skip ci] prepare release 23.1.0.139 2023-06-16 13:03:18 +00:00
pzurek
8734eec068 Trigger CI 2023-06-16 14:13:35 +02:00
alfresco-build
1e506659d2 [maven-release-plugin][skip ci] prepare for next development iteration 2023-06-15 16:00:17 +00:00
alfresco-build
b834ab9245 [maven-release-plugin][skip ci] prepare release 23.1.0.138 2023-06-15 16:00:14 +00:00
Krystian Dabrowski
402c0661e0 ACS-4799: Elasticsearch query feature expansion - Query E2Es capabilities expanded: (#1997)
- added query templates
- added query defaults
2023-06-15 16:05:54 +02:00
alfresco-build
763f0932a0 [maven-release-plugin][skip ci] prepare for next development iteration 2023-06-15 11:25:36 +00:00
alfresco-build
0403fcde69 [maven-release-plugin][skip ci] prepare release 23.1.0.137 2023-06-15 11:25:32 +00:00
rrajoria
1866e64d07 MNT-23724: Fix for Downloading a folder as zip with correct Name (#1994) 2023-06-15 16:07:26 +05:30
alfresco-build
47b793b922 [maven-release-plugin][skip ci] prepare for next development iteration 2023-06-15 09:33:28 +00:00
alfresco-build
8ebaf16a45 [maven-release-plugin][skip ci] prepare release 23.1.0.136 2023-06-15 09:33:24 +00:00
Sara
c3dcf8891e ACS-5421 Remove RepoUrlConfigSource (#1992) 2023-06-15 09:36:44 +01:00
alfresco-build
2bac9bd9d1 [maven-release-plugin][skip ci] prepare for next development iteration 2023-06-13 08:40:14 +00:00
alfresco-build
fffef168d9 [maven-release-plugin][skip ci] prepare release 23.1.0.135 2023-06-13 08:40:11 +00:00
rrajoria
0f89c3ce8a Update surf-webscript version 2023-06-13 13:19:47 +05:30
alfresco-build
497b197c12 [maven-release-plugin][skip ci] prepare for next development iteration 2023-06-11 00:07:14 +00:00
29 changed files with 348 additions and 188 deletions

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-amps</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-parent</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-automation-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<build>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-parent</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<build>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-amps</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<dependencies>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<dependencies>

View File

@@ -9,6 +9,6 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
</project>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<modules>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<organization>

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<developers>

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<developers>

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -0,0 +1,190 @@
package org.alfresco.rest.search;
import java.util.List;
import java.util.Objects;
import org.alfresco.rest.core.IRestModel;
import org.alfresco.utility.model.TestModel;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Generated by 'krystian' on '2023-06-12 18:46' from 'Alfresco Content Services REST API' swagger file
* Generated from 'Alfresco Content Services REST API' swagger file
* Base Path {@linkplain /alfresco/api/-default-/public/search/versions/1}
*/
public class RestRequestDefaultsModel extends TestModel implements IRestModel<RestRequestDefaultsModel>
{
@JsonProperty(value = "entry")
RestRequestDefaultsModel model;
@Override
public RestRequestDefaultsModel onModel()
{
return model;
}
/**
A list of query fields/properties used to expand TEXT: queries.
The default is cm:content.
You could include all content properties using d:content or list all individual content properties or types.
As more terms are included the query size, complexity, memory impact and query time will increase.
*/
private List<String> textAttributes;
/**
The default way to combine query parts when AND or OR is not explicitly stated - includes ! - +
one two three
(one two three)
*/
private String defaultFTSOperator;
/**
The default way to combine query parts in field query groups when AND or OR is not explicitly stated - includes ! - +
FIELD:(one two three)
*/
private String defaultFTSFieldOperator;
/**
The default name space to use if one is not provided
*/
private String namespace;
private String defaultFieldName;
public List<String> getTextAttributes()
{
return this.textAttributes;
}
public void setTextAttributes(List<String> textAttributes)
{
this.textAttributes = textAttributes;
}
public String getDefaultFTSOperator()
{
return this.defaultFTSOperator;
}
public void setDefaultFTSOperator(String defaultFTSOperator)
{
this.defaultFTSOperator = defaultFTSOperator;
}
public String getDefaultFTSFieldOperator()
{
return this.defaultFTSFieldOperator;
}
public void setDefaultFTSFieldOperator(String defaultFTSFieldOperator)
{
this.defaultFTSFieldOperator = defaultFTSFieldOperator;
}
public String getNamespace()
{
return this.namespace;
}
public void setNamespace(String namespace)
{
this.namespace = namespace;
}
public String getDefaultFieldName()
{
return this.defaultFieldName;
}
public void setDefaultFieldName(String defaultFieldName)
{
this.defaultFieldName = defaultFieldName;
}
@Override
public String toString()
{
return "RestRequestDefaultsModel{" + "textAttributes=" + textAttributes + ", defaultFTSOperator='" + defaultFTSOperator + '\'' + ", defaultFTSFieldOperator='"
+ defaultFTSFieldOperator + '\'' + ", namespace='" + namespace + '\'' + ", defaultFieldName='" + defaultFieldName + '\'' + '}';
}
@Override
public boolean equals(Object o)
{
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
RestRequestDefaultsModel that = (RestRequestDefaultsModel) o;
return Objects.equals(textAttributes, that.textAttributes) && Objects.equals(defaultFTSOperator, that.defaultFTSOperator) && Objects.equals(
defaultFTSFieldOperator, that.defaultFTSFieldOperator) && Objects.equals(namespace, that.namespace) && Objects.equals(defaultFieldName, that.defaultFieldName);
}
@Override
public int hashCode()
{
return Objects.hash(textAttributes, defaultFTSOperator, defaultFTSFieldOperator, namespace, defaultFieldName);
}
public static Builder builder()
{
return new Builder();
}
public static class Builder
{
private List<String> textAttributes;
private String defaultFTSOperator;
private String defaultFTSFieldOperator;
private String namespace;
private String defaultFieldName;
public Builder textAttributes(List<String> textAttributes)
{
this.textAttributes = textAttributes;
return this;
}
public Builder defaultFTSOperator(String defaultFTSOperator)
{
this.defaultFTSOperator = defaultFTSOperator;
return this;
}
public Builder defaultFTSFieldOperator(String defaultFTSFieldOperator)
{
this.defaultFTSFieldOperator = defaultFTSFieldOperator;
return this;
}
public Builder namespace(String namespace)
{
this.namespace = namespace;
return this;
}
public Builder defaultFieldName(String defaultFieldName)
{
this.defaultFieldName = defaultFieldName;
return this;
}
public RestRequestDefaultsModel create()
{
RestRequestDefaultsModel defaults = new RestRequestDefaultsModel();
defaults.setTextAttributes(this.textAttributes);
defaults.setDefaultFTSOperator(this.defaultFTSOperator);
defaults.setDefaultFTSFieldOperator(this.defaultFTSFieldOperator);
defaults.setNamespace(this.namespace);
defaults.setDefaultFieldName(this.defaultFieldName);
return defaults;
}
}
}

View File

@@ -0,0 +1,105 @@
package org.alfresco.rest.search;
import java.util.Objects;
import org.alfresco.rest.core.IRestModel;
import org.alfresco.utility.model.TestModel;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Generated by 'krystian' on '2023-06-12 18:46' from 'Alfresco Content Services REST API' swagger file
* Generated from 'Alfresco Content Services REST API' swagger file
* Base Path {@linkplain /alfresco/api/-default-/public/search/versions/1}
*/
public class RestRequestTemplatesModel extends TestModel implements IRestModel<RestRequestTemplatesModel>
{
@JsonProperty(value = "entry")
RestRequestTemplatesModel model;
@Override
public RestRequestTemplatesModel onModel()
{
return model;
}
private String name;
private String template;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getTemplate()
{
return template;
}
public void setTemplate(String template)
{
this.template = template;
}
@Override
public String toString()
{
return "RestRequestTemplatesModel{" + "name='" + name + '\'' + ", template='" + template + '\'' + '}';
}
@Override
public boolean equals(Object o)
{
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
RestRequestTemplatesModel that = (RestRequestTemplatesModel) o;
return Objects.equals(name, that.name) && Objects.equals(template, that.template);
}
@Override
public int hashCode()
{
return Objects.hash(name, template);
}
public static Builder builder()
{
return new Builder();
}
public static class Builder
{
private String name;
private String template;
public Builder name(String name)
{
this.name = name;
return this;
}
public Builder template(String template)
{
this.template = template;
return this;
}
public RestRequestTemplatesModel create()
{
RestRequestTemplatesModel template = new RestRequestTemplatesModel();
template.setName(this.name);
template.setTemplate(this.template);
return template;
}
}
}

View File

@@ -43,14 +43,15 @@
*/
package org.alfresco.rest.search;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.alfresco.rest.model.RestRequestRangesModel;
import org.alfresco.rest.model.RestRequestSpellcheckModel;
import org.alfresco.utility.model.TestModel;
import java.util.ArrayList;
import java.util.List;
/**
* Search Query object.
* @author msuzuki
@@ -76,6 +77,8 @@ public class SearchRequest extends TestModel
String facetFormat;
List<String> include;
List<SortClause> sort;
RestRequestDefaultsModel defaults;
List<RestRequestTemplatesModel> templates;
public SearchRequest()
{
@@ -255,6 +258,26 @@ public class SearchRequest extends TestModel
this.fields = fields;
}
public RestRequestDefaultsModel getDefaults()
{
return defaults;
}
public void setDefaults(RestRequestDefaultsModel defaults)
{
this.defaults = defaults;
}
public List<RestRequestTemplatesModel> getTemplates()
{
return templates;
}
public void setTemplates(List<RestRequestTemplatesModel> templates)
{
this.templates = templates;
}
public List<SortClause> getSort()
{
if (sort == null)

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<developers>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<properties>

View File

@@ -2,7 +2,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
<packaging>pom</packaging>
<name>Alfresco Community Repo Parent</name>
@@ -61,7 +61,7 @@
<dependency.jackson.version>2.15.1</dependency.jackson.version>
<dependency.cxf.version>3.5.5</dependency.cxf.version>
<dependency.opencmis.version>1.0.0</dependency.opencmis.version>
<dependency.webscripts.version>8.42</dependency.webscripts.version>
<dependency.webscripts.version>8.43</dependency.webscripts.version>
<dependency.bouncycastle.version>1.70</dependency.bouncycastle.version>
<dependency.mockito-core.version>4.9.0</dependency.mockito-core.version>
<dependency.assertj.version>3.24.2</dependency.assertj.version>
@@ -149,7 +149,7 @@
<connection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</connection>
<developerConnection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</developerConnection>
<url>https://github.com/Alfresco/alfresco-community-repo</url>
<tag>23.1.0.134</tag>
<tag>23.1.0.139</tag>
</scm>
<distributionManagement>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<dependencies>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>23.1.0.134</version>
<version>23.1.0.139</version>
</parent>
<dependencies>

View File

@@ -1,158 +0,0 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* 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 <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.config.source;
import java.io.InputStream;
import java.util.List;
import org.springframework.extensions.config.ConfigException;
import org.springframework.extensions.config.source.UrlConfigSource;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.cmr.repository.ContentReader;
import org.alfresco.service.cmr.repository.ContentService;
import org.alfresco.service.cmr.repository.InvalidStoreRefException;
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.search.SearchService;
import org.alfresco.service.namespace.NamespaceService;
/**
* ConfigSource that looks for a prefix to determine where to look for the config.</br>
* Valid prefixes are:
* <ul>
* <li><b><storeProtocol>://<storeIdentifier></b> the location provided is a path to a repository file</li>
* </ul>
* as well as those defined in the core (UrlConfigSource)
*
* Example store URLs
* <code>workspace://SpacesStore/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.webclient_extension.childname}/cm:web-client-config-custom.xml</code>
* <code>workspace://SpacesStore/app:company_home/app:dictionary/app:webclient_extension/cm:web-client-config-custom.xml</code>
*/
public class RepoUrlConfigSource extends UrlConfigSource
{
private TenantService tenantService;
private SearchService searchService;
private ContentService contentService;
private NamespaceService namespaceService;
private NodeService nodeService;
public void setTenantService(TenantService tenantService)
{
this.tenantService = tenantService;
}
public void setSearchService(SearchService searchService)
{
this.searchService = searchService;
}
public void setContentService(ContentService contentService)
{
this.contentService = contentService;
}
public void setNamespaceService(NamespaceService namespaceService)
{
this.namespaceService = namespaceService;
}
public void setNodeService(NodeService nodeService)
{
this.nodeService = nodeService;
}
public RepoUrlConfigSource(String sourceLocation)
{
super(sourceLocation);
}
public RepoUrlConfigSource(List<String> sourceLocations)
{
super(sourceLocations);
}
public InputStream getInputStream(String sourceUrl)
{
// determine the config source
try
{
return super.getInputStream(sourceUrl);
}
catch (ConfigException ce)
{
int idx = sourceUrl.indexOf(StoreRef.URI_FILLER);
if (idx != -1)
{
// assume this is a repository location
int idx2 = sourceUrl.indexOf("/", idx+3);
String store = sourceUrl.substring(0, idx2);
String path = sourceUrl.substring(idx2);
StoreRef storeRef = tenantService.getName(new StoreRef(store));
NodeRef rootNode = null;
try
{
rootNode = nodeService.getRootNode(storeRef);
}
catch (InvalidStoreRefException e)
{
throw ce;
}
List<NodeRef> nodeRefs = searchService.selectNodes(rootNode, path, null, namespaceService, false);
if (nodeRefs.size() == 0)
{
// if none found, then simply skip
return null;
}
else if (nodeRefs.size() > 1)
{
// unexpected
throw new ConfigException("Found duplicate config sources in the repository " + sourceUrl);
}
NodeRef nodeRef = nodeRefs.get(0);
ContentReader cr = contentService.getReader(nodeRef, ContentModel.PROP_CONTENT);
return cr.getContentInputStream();
}
else
{
// not a repository url
throw ce;
}
}
}
}

View File

@@ -1349,7 +1349,7 @@ system.remove-alf_server-table-from-db.ignored=true
allow.unsecure.callback.jsonp=false
# pre-configured allow list of media/mime types to allow inline instead of attachment (via Content-Disposition response header)
content.nonAttach.mimetypes=application/pdf,image/jpeg,image/gif,image/png,image/tiff,image/bmp
content.nonAttach.mimetypes=application/pdf,image/jpeg,image/gif,image/png,image/tiff,image/bmp,application/octet-stream
# Zip file compression ratio threshold as a percentage, above which the zip file will be considered a "zip bomb" and the
# import extraction process cancelled.