#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); } } }