org.eclipse.dirigible.components.odata.api.ODataEntity Maven / Gradle / Ivy
/*
* Copyright (c) 2023 SAP SE or an SAP affiliate company and Eclipse Dirigible contributors
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v20.html
*
* SPDX-FileCopyrightText: 2023 SAP SE or an SAP affiliate company and Eclipse Dirigible contributors
* SPDX-License-Identifier: EPL-2.0
*/
package org.eclipse.dirigible.components.odata.api;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.google.gson.annotations.Expose;
/**
* The Class ODataEntityDefinition.
*/
public class ODataEntity {
/** The name. */
@Expose
private String name;
/** The alias. */
@Expose
private String alias;
/** The table. */
@Expose
private String table;
/** The key generated. */
@Expose
private String keyGenerated;
/** The properties. */
@Expose
private List properties = new ArrayList<>();
/** The parameters. */
@Expose
private List parameters = new ArrayList<>();
/** The navigations. */
@Expose
private List navigations = new ArrayList<>();
/** The handlers. */
@Expose
private List handlers = new ArrayList<>();
/** For VIEW type the keys need to be specified explicitly, because on DB side there will be no keys definitions. */
@Expose
private List keys = new ArrayList<>();
/**
* Define list of additional annotations for EntitySet element.
* For example:
* <EntitySet Name="SomeName" EntityType="someType" sap:creatable="true" sap:updatable-path="Updatable">
*/
@Expose
private Map annotationsEntitySet = new HashMap<>();
/**
* Define list of additional annotations for EntityType element.
* For example:
* <EntityType Name="SomeTypeName" sap:semantics="aggregate"">
*/
@Expose
private Map annotationsEntityType = new HashMap<>();
/**
* Define list of aggregation types for the columns.
* For example:
* <SUM="NUMBER">
*/
@Expose
private Map aggregationsTypeAndColumn = new HashMap<>();
/**
* Gets the name.
*
* @return the name
*/
public String getName() {
return name;
}
/**
* Sets the name.
*
* @param name the new name
*/
public void setName(String name) {
this.name = name;
}
/**
* Gets the alias.
*
* @return the alias
*/
public String getAlias() {
return alias;
}
/**
* Sets the alias.
*
* @param alias the new alias
*/
public void setAlias(String alias) {
this.alias = alias;
}
/**
* Gets the table.
*
* @return the table
*/
public String getTable() {
return table;
}
/**
* Sets the table.
*
* @param table the new table
*/
public void setTable(String table) {
this.table = table;
}
/**
* Gets the key generated.
*
* @return the key generated
*/
public String getKeyGenerated() {
return keyGenerated;
}
/**
* Sets the key generated.
*
* @param keyGenerated the new key generated
*/
public void setKeyGenerated(String keyGenerated) {
this.keyGenerated = keyGenerated;
}
/**
* Gets the properties.
*
* @return the properties
*/
public List getProperties() {
return properties;
}
/**
* Sets the properties.
*
* @param properties the new properties
*/
public void setProperties(List properties) {
this.properties = properties;
}
/**
* Gets the parameters.
*
* @return the parameters
*/
public List getParameters() {
return parameters;
}
/**
* Sets the parameters.
*
* @param parameters the new parameters
*/
public void setParameters(List parameters) {
this.parameters = parameters;
}
/**
* Gets the navigations.
*
* @return the navigations
*/
public List getNavigations() {
return navigations;
}
/**
* Sets the navigations.
*
* @param navigations the new navigations
*/
public void setNavigations(List navigations) {
this.navigations = navigations;
}
/**
* Gets the handlers.
*
* @return the handlers
*/
public List getHandlers() {
return handlers;
}
/**
* Sets the handlers.
*
* @param handlers the new handlers
*/
public void setHandlers(List handlers) {
this.handlers = handlers;
}
/**
* Gets the keys.
*
* @return the keys
*/
public List getKeys() {
return keys;
}
/**
* Sets the keys.
*
* @param keys the new keys
*/
public void setKeys(List keys) {
this.keys = keys;
}
/**
* Gets the annotations entity set.
*
* @return the annotations entity set
*/
public Map getAnnotationsEntitySet() {
return annotationsEntitySet;
}
/**
* Sets the annotations entity set.
*
* @param annotationsEntitySet the annotations entity set
*/
public void setAnnotationsEntitySet(Map annotationsEntitySet) {
this.annotationsEntitySet = annotationsEntitySet;
}
/**
* Gets the annotations entity type.
*
* @return the annotations entity type
*/
public Map getAnnotationsEntityType() {
return annotationsEntityType;
}
/**
* Sets the annotations entity type.
*
* @param annotationsEntityType the annotations entity type
*/
public void setAnnotationsEntityType(Map annotationsEntityType) {
this.annotationsEntityType = annotationsEntityType;
}
/**
* Gets the aggregations type and column.
*
* @return the aggregations type and column
*/
public Map getAggregationsTypeAndColumn() {
return aggregationsTypeAndColumn;
}
/**
* Sets the aggregations type and column.
*
* @param aggregationsTypeAndColumn the aggregations type and column
*/
public void setAggregationsTypeAndColumn(Map aggregationsTypeAndColumn) {
this.aggregationsTypeAndColumn = aggregationsTypeAndColumn;
}
/**
* To string.
*
* @return the string
*/
@Override
public String toString() {
return "ODataEntity [name=" + name + ", alias=" + alias + ", table=" + table + ", keyGenerated=" + keyGenerated
+ ", properties=" + properties + ", parameters=" + parameters + ", navigations=" + navigations
+ ", handlers=" + handlers + ", keys=" + keys + ", annotationsEntitySet=" + annotationsEntitySet
+ ", annotationsEntityType=" + annotationsEntityType + ", aggregationsTypeAndColumn="
+ aggregationsTypeAndColumn + "]";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy