#region Disclaimer / License
// Copyright (C) 2009, Kenneth Skovhede
// http://www.hexad.dk, opensource@hexad.dk
//
// This library 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 2.1 of the License, or (at your option) any later version.
//
// This library 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 this library; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
//
#endregion
namespace OSGeo.MapGuide.MaestroAPI {
///
[System.Xml.Serialization.XmlRootAttribute("FeatureProviderCapabilities", Namespace="", IsNullable=false)]
public class FdoProviderCapabilities {
public static readonly string SchemaName = "FdoProviderCapabilities-1.0.0.xsd";
[System.Xml.Serialization.XmlAttribute("noNamespaceSchemaLocation", Namespace="http://www.w3.org/2001/XMLSchema-instance")]
public string XsdSchema
{
get { return SchemaName; }
set { if (value != SchemaName) throw new System.Exception("Cannot set the schema name"); }
}
private FdoProviderCapabilitiesProvider m_provider;
private FdoProviderCapabilitiesConnection m_connection;
private FdoProviderCapabilitiesSchema m_schema;
private FdoProviderCapabilitiesCommand m_command;
private FdoProviderCapabilitiesFilter m_filter;
private FdoProviderCapabilitiesExpression m_expression;
private FdoProviderCapabilitiesRaster m_raster;
private FdoProviderCapabilitiesTopology m_topology;
private FdoProviderCapabilitiesGeometry m_geometry;
///
public FdoProviderCapabilitiesProvider Provider {
get {
return this.m_provider;
}
set {
this.m_provider = value;
}
}
///
public FdoProviderCapabilitiesConnection Connection {
get {
return this.m_connection;
}
set {
this.m_connection = value;
}
}
///
public FdoProviderCapabilitiesSchema Schema {
get {
return this.m_schema;
}
set {
this.m_schema = value;
}
}
///
public FdoProviderCapabilitiesCommand Command {
get {
return this.m_command;
}
set {
this.m_command = value;
}
}
///
public FdoProviderCapabilitiesFilter Filter {
get {
return this.m_filter;
}
set {
this.m_filter = value;
}
}
///
public FdoProviderCapabilitiesExpression Expression {
get {
return this.m_expression;
}
set {
this.m_expression = value;
}
}
///
public FdoProviderCapabilitiesRaster Raster {
get {
return this.m_raster;
}
set {
this.m_raster = value;
}
}
///
public FdoProviderCapabilitiesTopology Topology {
get {
return this.m_topology;
}
set {
this.m_topology = value;
}
}
///
public FdoProviderCapabilitiesGeometry Geometry {
get {
return this.m_geometry;
}
set {
this.m_geometry = value;
}
}
}
///
public class FdoProviderCapabilitiesProvider {
private string m_name;
private string m_value;
///
[System.Xml.Serialization.XmlAttributeAttribute()]
public string Name {
get {
return this.m_name;
}
set {
this.m_name = value;
}
}
///
[System.Xml.Serialization.XmlTextAttribute()]
public string Value {
get {
return this.m_value;
}
set {
this.m_value = value;
}
}
}
///
public class FdoProviderCapabilitiesGeometry {
private FdoProviderCapabilitiesGeometryTypeCollection m_types;
private FdoProviderCapabilitiesGeometryType1Collection m_components;
private string m_dimensionality;
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesGeometryTypeCollection Types {
get {
return this.m_types;
}
set {
this.m_types = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesGeometryType1Collection Components {
get {
return this.m_components;
}
set {
this.m_components = value;
}
}
///
[System.Xml.Serialization.XmlElementAttribute(DataType="integer")]
public string Dimensionality {
get {
return this.m_dimensionality;
}
set {
this.m_dimensionality = value;
}
}
}
///
public enum FdoProviderCapabilitiesGeometryType {
///
None,
///
Point,
///
LineString,
///
Polygon,
///
MultiPoint,
///
MultiLineString,
///
MultiPolygon,
///
MultiGeometry,
///
CurveString,
///
CurvePolygon,
///
MultiCurveString,
///
MultiCurvePolygon,
}
///
[System.Xml.Serialization.XmlTypeAttribute(TypeName="FdoProviderCapabilitiesGeometryLineType")]
public enum FdoProviderCapabilitiesGeometryType1 {
///
LinearRing,
///
ArcSegment,
///
LinearSegment,
///
CurveRing,
}
///
public class FdoProviderCapabilitiesTopology {
private bool m_supportsTopology;
private bool m_supportsTopologicalHierarchy;
private bool m_breaksCurveCrossingsAutomatically;
private bool m_activatesTopologyByArea;
private bool m_constrainsFeatureMovements;
///
public bool SupportsTopology {
get {
return this.m_supportsTopology;
}
set {
this.m_supportsTopology = value;
}
}
///
public bool SupportsTopologicalHierarchy {
get {
return this.m_supportsTopologicalHierarchy;
}
set {
this.m_supportsTopologicalHierarchy = value;
}
}
///
public bool BreaksCurveCrossingsAutomatically {
get {
return this.m_breaksCurveCrossingsAutomatically;
}
set {
this.m_breaksCurveCrossingsAutomatically = value;
}
}
///
public bool ActivatesTopologyByArea {
get {
return this.m_activatesTopologyByArea;
}
set {
this.m_activatesTopologyByArea = value;
}
}
///
public bool ConstrainsFeatureMovements {
get {
return this.m_constrainsFeatureMovements;
}
set {
this.m_constrainsFeatureMovements = value;
}
}
}
///
public class FdoProviderCapabilitiesRaster {
private bool m_supportsRaster;
private bool m_supportsStitching;
private bool m_supportsSubsampling;
///
public bool SupportsRaster {
get {
return this.m_supportsRaster;
}
set {
this.m_supportsRaster = value;
}
}
///
public bool SupportsStitching {
get {
return this.m_supportsStitching;
}
set {
this.m_supportsStitching = value;
}
}
///
public bool SupportsSubsampling {
get {
return this.m_supportsSubsampling;
}
set {
this.m_supportsSubsampling = value;
}
}
}
///
public class FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinition {
private string m_name;
private string m_description;
private FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionDataType m_dataType;
///
public string Name {
get {
return this.m_name;
}
set {
this.m_name = value;
}
}
///
public string Description {
get {
return this.m_description;
}
set {
this.m_description = value;
}
}
///
public FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionDataType DataType {
get {
return this.m_dataType;
}
set {
this.m_dataType = value;
}
}
}
///
public enum FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionDataType {
///
Boolean,
///
Byte,
///
DateTime,
///
Decimal,
///
Double,
///
Int16,
///
Int32,
///
Int64,
///
Single,
///
String,
///
BLOB,
///
CLOB,
///
UniqueID,
///
Void,
}
///
public class FdoProviderCapabilitiesExpressionFunctionDefinition {
private string m_name;
private string m_description;
private string m_returnType;
private FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionCollection m_argumentDefinitionList;
///
public string Name {
get {
return this.m_name;
}
set {
this.m_name = value;
}
}
///
public string Description {
get {
return this.m_description;
}
set {
this.m_description = value;
}
}
///
public string ReturnType {
get {
return this.m_returnType;
}
set {
this.m_returnType = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("ArgumentDefinition", IsNullable=false)]
public FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionCollection ArgumentDefinitionList {
get {
return this.m_argumentDefinitionList;
}
set {
this.m_argumentDefinitionList = value;
}
}
}
///
public enum FdoProviderCapabilitiesExpressionFunctionDefinitionReturnType {
///
Boolean,
///
Byte,
///
DateTime,
///
Decimal,
///
Double,
///
Int16,
///
Int32,
///
Int64,
///
Single,
///
String,
///
BLOB,
///
CLOB,
///
UniqueID,
}
///
public class FdoProviderCapabilitiesExpression {
private FdoProviderCapabilitiesExpressionNameCollection m_type;
private FdoProviderCapabilitiesExpressionFunctionDefinitionCollection m_functionDefinitionList;
///
[System.Xml.Serialization.XmlArrayItemAttribute("Name", IsNullable=false)]
public FdoProviderCapabilitiesExpressionNameCollection Type {
get {
return this.m_type;
}
set {
this.m_type = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("FunctionDefinition", IsNullable=false)]
public FdoProviderCapabilitiesExpressionFunctionDefinitionCollection FunctionDefinitionList {
get {
return this.m_functionDefinitionList;
}
set {
this.m_functionDefinitionList = value;
}
}
}
///
public enum FdoProviderCapabilitiesExpressionName {
///
Basic,
///
Function,
///
Parameter,
}
///
public class FdoProviderCapabilitiesFilter {
private FdoProviderCapabilitiesFilterTypeCollection m_condition;
private FdoProviderCapabilitiesFilterOperationCollection m_spatial;
private FdoProviderCapabilitiesFilterOperation1Collection m_distance;
private bool m_supportsGeodesicDistance;
private bool m_supportsNonLiteralGeometricOperations;
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesFilterTypeCollection Condition {
get {
return this.m_condition;
}
set {
this.m_condition = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("Operation", IsNullable=false)]
public FdoProviderCapabilitiesFilterOperationCollection Spatial {
get {
return this.m_spatial;
}
set {
this.m_spatial = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("Operation", IsNullable=false)]
public FdoProviderCapabilitiesFilterOperation1Collection Distance {
get {
return this.m_distance;
}
set {
this.m_distance = value;
}
}
///
public bool SupportsGeodesicDistance {
get {
return this.m_supportsGeodesicDistance;
}
set {
this.m_supportsGeodesicDistance = value;
}
}
///
public bool SupportsNonLiteralGeometricOperations {
get {
return this.m_supportsNonLiteralGeometricOperations;
}
set {
this.m_supportsNonLiteralGeometricOperations = value;
}
}
}
///
public enum FdoProviderCapabilitiesFilterType {
///
Comparison,
///
Like,
///
In,
///
Null,
///
Spatial,
///
Distance,
}
///
public enum FdoProviderCapabilitiesFilterOperation {
///
Contains,
///
Crosses,
///
Disjoint,
///
Equals,
///
Intersects,
///
Overlaps,
///
Touches,
///
Within,
///
CoveredBy,
///
Inside,
///
EnvelopeIntersects,
}
///
[System.Xml.Serialization.XmlTypeAttribute(TypeName="FdoProviderCapabilitiesFilterGeometryOperation")]
public enum FdoProviderCapabilitiesFilterOperation1 {
///
Beyond,
///
Within,
}
///
public class FdoProviderCapabilitiesCommand {
private FdoProviderCapabilitiesCommandNameCollection m_supportedCommands;
private bool m_supportsParameters;
private bool m_supportsTimeout;
///
[System.Xml.Serialization.XmlArrayItemAttribute("Name", IsNullable=false)]
public FdoProviderCapabilitiesCommandNameCollection SupportedCommands {
get {
return this.m_supportedCommands;
}
set {
this.m_supportedCommands = value;
}
}
///
public bool SupportsParameters {
get {
return this.m_supportsParameters;
}
set {
this.m_supportsParameters = value;
}
}
///
public bool SupportsTimeout {
get {
return this.m_supportsTimeout;
}
set {
this.m_supportsTimeout = value;
}
}
}
///
public enum FdoProviderCapabilitiesCommandName {
///
Select,
///
Insert,
///
Delete,
///
Update,
///
DescribeSchema,
///
ApplySchema,
///
DestroySchema,
///
ActivateSpatialContext,
///
CreateSpatialContext,
///
DestroySpatialContext,
///
GetSpatialContexts,
///
CreateMeasureUnit,
///
DestroyMeasureUnit,
///
GetMeasureUnits,
///
SQLCommand,
///
AcquireLock,
///
GetLockInfo,
///
GetLockedObjects,
///
GetLockOwners,
///
ReleaseLock,
///
ActivateLongTransaction,
///
CommitLongTransaction,
///
CreateLongTransaction,
///
GetLongTransactions,
///
FreezeLongTransaction,
///
RollbackLongTransaction,
///
ActivateLongTransactionCheckpoint,
///
CreateLongTransactionCheckpoint,
///
GetLongTransactionCheckpoints,
///
RollbackLongTransactionCheckpoint,
///
ChangeLongTransactionPrivileges,
///
GetLongTransactionPrivileges,
///
ChangeLongTransactionSet,
///
GetLongTransactionsInSet,
///
FirstProviderCommand,
///
DeactivateLongTransaction,
}
///
public class FdoProviderCapabilitiesSchema {
private FdoProviderCapabilitiesSchemaTypeCollection m_class;
private FdoProviderCapabilitiesSchemaType1Collection m_data;
private bool m_supportsInheritance;
private bool m_supportsMultipleSchemas;
private bool m_supportsObjectProperties;
private bool m_supportsAssociationProperties;
private bool m_supportsSchemaOverrides;
private bool m_supportsNetworkModel;
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesSchemaTypeCollection Class {
get {
return this.m_class;
}
set {
this.m_class = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesSchemaType1Collection Data {
get {
return this.m_data;
}
set {
this.m_data = value;
}
}
///
public bool SupportsInheritance {
get {
return this.m_supportsInheritance;
}
set {
this.m_supportsInheritance = value;
}
}
///
public bool SupportsMultipleSchemas {
get {
return this.m_supportsMultipleSchemas;
}
set {
this.m_supportsMultipleSchemas = value;
}
}
///
public bool SupportsObjectProperties {
get {
return this.m_supportsObjectProperties;
}
set {
this.m_supportsObjectProperties = value;
}
}
///
public bool SupportsAssociationProperties {
get {
return this.m_supportsAssociationProperties;
}
set {
this.m_supportsAssociationProperties = value;
}
}
///
public bool SupportsSchemaOverrides {
get {
return this.m_supportsSchemaOverrides;
}
set {
this.m_supportsSchemaOverrides = value;
}
}
///
public bool SupportsNetworkModel {
get {
return this.m_supportsNetworkModel;
}
set {
this.m_supportsNetworkModel = value;
}
}
}
///
public enum FdoProviderCapabilitiesSchemaType {
///
Class,
///
FeatureClass,
}
///
[System.Xml.Serialization.XmlTypeAttribute(TypeName="FdoProviderCapabilitiesSchemaDataType")]
public enum FdoProviderCapabilitiesSchemaType1 {
///
Boolean,
///
Byte,
///
DateTime,
///
Decimal,
///
Double,
///
Int16,
///
Int32,
///
Int64,
///
Single,
///
String,
///
BLOB,
///
CLOB,
///
UniqueID,
}
///
public class FdoProviderCapabilitiesConnection {
private FdoProviderCapabilitiesConnectionThreadCapability m_threadCapability;
private FdoProviderCapabilitiesConnectionTypeCollection m_spatialContextExtent;
private bool m_supportsLocking;
private bool m_supportsTimeout;
private bool m_supportsTransactions;
private bool m_supportsLongTransactions;
private bool m_supportsSQL;
private bool m_supportsConfiguration;
///
public FdoProviderCapabilitiesConnectionThreadCapability ThreadCapability {
get {
return this.m_threadCapability;
}
set {
this.m_threadCapability = value;
}
}
///
[System.Xml.Serialization.XmlArrayItemAttribute("Type", IsNullable=false)]
public FdoProviderCapabilitiesConnectionTypeCollection SpatialContextExtent {
get {
return this.m_spatialContextExtent;
}
set {
this.m_spatialContextExtent = value;
}
}
///
public bool SupportsLocking {
get {
return this.m_supportsLocking;
}
set {
this.m_supportsLocking = value;
}
}
///
public bool SupportsTimeout {
get {
return this.m_supportsTimeout;
}
set {
this.m_supportsTimeout = value;
}
}
///
public bool SupportsTransactions {
get {
return this.m_supportsTransactions;
}
set {
this.m_supportsTransactions = value;
}
}
///
public bool SupportsLongTransactions {
get {
return this.m_supportsLongTransactions;
}
set {
this.m_supportsLongTransactions = value;
}
}
///
public bool SupportsSQL {
get {
return this.m_supportsSQL;
}
set {
this.m_supportsSQL = value;
}
}
///
public bool SupportsConfiguration {
get {
return this.m_supportsConfiguration;
}
set {
this.m_supportsConfiguration = value;
}
}
}
///
public enum FdoProviderCapabilitiesConnectionThreadCapability {
///
SingleThreaded,
///
PerConnectionThreaded,
///
PerCommandThreaded,
///
MultiThreaded,
}
///
public enum FdoProviderCapabilitiesConnectionType {
///
Static,
///
Dynamic,
}
public class FdoProviderCapabilitiesGeometryTypeCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesGeometryType this[int idx] {
get {
return ((FdoProviderCapabilitiesGeometryType)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesGeometryType value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesGeometryType1Collection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesGeometryType1 this[int idx] {
get {
return ((FdoProviderCapabilitiesGeometryType1)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesGeometryType1 value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinitionCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinition this[int idx] {
get {
return ((FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinition)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesExpressionFunctionDefinitionArgumentDefinition value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesExpressionNameCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesExpressionName this[int idx] {
get {
return ((FdoProviderCapabilitiesExpressionName)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesExpressionName value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesExpressionFunctionDefinitionCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesExpressionFunctionDefinition this[int idx] {
get {
return ((FdoProviderCapabilitiesExpressionFunctionDefinition)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesExpressionFunctionDefinition value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesFilterTypeCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesFilterType this[int idx] {
get {
return ((FdoProviderCapabilitiesFilterType)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesFilterType value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesFilterOperationCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesFilterOperation this[int idx] {
get {
return ((FdoProviderCapabilitiesFilterOperation)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesFilterOperation value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesFilterOperation1Collection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesFilterOperation1 this[int idx] {
get {
return ((FdoProviderCapabilitiesFilterOperation1)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesFilterOperation1 value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesCommandNameCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesCommandName this[int idx] {
get {
return ((FdoProviderCapabilitiesCommandName)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesCommandName value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesSchemaTypeCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesSchemaType this[int idx] {
get {
return ((FdoProviderCapabilitiesSchemaType)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesSchemaType value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesSchemaType1Collection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesSchemaType1 this[int idx] {
get {
return ((FdoProviderCapabilitiesSchemaType1)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesSchemaType1 value) {
return base.InnerList.Add(value);
}
}
public class FdoProviderCapabilitiesConnectionTypeCollection : System.Collections.CollectionBase {
public FdoProviderCapabilitiesConnectionType this[int idx] {
get {
return ((FdoProviderCapabilitiesConnectionType)(base.InnerList[idx]));
}
set {
base.InnerList[idx] = value;
}
}
public int Add(FdoProviderCapabilitiesConnectionType value) {
return base.InnerList.Add(value);
}
}
}