![JAR search and dependency download from the Maven repository](/logo.png)
com.arangodb.entity.arangosearch.analyzer.AQLAnalyzerProperties Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of core Show documentation
Show all versions of core Show documentation
Core module for ArangoDB Java Driver
/*
* DISCLAIMER
*
* Copyright 2016 ArangoDB GmbH, Cologne, Germany
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Copyright holder is ArangoDB GmbH, Cologne, Germany
*/
package com.arangodb.entity.arangosearch.analyzer;
import java.util.Objects;
/**
* @author Michele Rastelli
*/
public final class AQLAnalyzerProperties {
private String queryString;
private Boolean collapsePositions;
private Boolean keepNull;
private Integer batchSize;
private Long memoryLimit;
private ReturnType returnType;
/**
* @return AQL query to be executed
*/
public String getQueryString() {
return queryString;
}
public void setQueryString(String queryString) {
this.queryString = queryString;
}
/**
* @return
* -
* true: set the position to 0 for all members of the query result array
*
* -
* false (default): set the position corresponding to the index of the result array member
*
*
*/
public Boolean getCollapsePositions() {
return collapsePositions;
}
public void setCollapsePositions(Boolean collapsePositions) {
this.collapsePositions = collapsePositions;
}
/**
* @return
* -
* true (default): treat null like an empty string
*
* -
* false: discard nulls from View index. Can be used for index filtering (i.e. make your query return null for
* unwanted data). Note that empty results are always discarded.
*
*
*/
public Boolean getKeepNull() {
return keepNull;
}
public void setKeepNull(Boolean keepNull) {
this.keepNull = keepNull;
}
/**
* @return number between 1 and 1000 (default = 1) that determines the batch size for reading data from the query.
* In general, a single token is expected to be returned. However, if the query is expected to return many results,
* then increasing batchSize trades memory for performance.
*/
public Integer getBatchSize() {
return batchSize;
}
public void setBatchSize(Integer batchSize) {
this.batchSize = batchSize;
}
/**
* @return memory limit for query execution in bytes. (default is 1048576 = 1Mb) Maximum is 33554432U (32Mb)
*/
public Long getMemoryLimit() {
return memoryLimit;
}
public void setMemoryLimit(Long memoryLimit) {
this.memoryLimit = memoryLimit;
}
/**
* @return data type of the returned tokens. If the indicated type does not match the actual type then an implicit
* type conversion is applied.
*/
public ReturnType getReturnType() {
return returnType;
}
public void setReturnType(ReturnType returnType) {
this.returnType = returnType;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
AQLAnalyzerProperties that = (AQLAnalyzerProperties) o;
return Objects.equals(queryString, that.queryString) && Objects.equals(collapsePositions,
that.collapsePositions) && Objects.equals(keepNull, that.keepNull) && Objects.equals(batchSize,
that.batchSize) && Objects.equals(memoryLimit, that.memoryLimit) && returnType == that.returnType;
}
@Override
public int hashCode() {
return Objects.hash(queryString, collapsePositions, keepNull, batchSize, memoryLimit, returnType);
}
public enum ReturnType {
string, number, bool
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy