예제 #1
0
        public override IObjectClass OpenObjectClass(IObjectDataset dataset)
        {
            Assert.ArgumentNotNull(dataset, nameof(dataset));

            WorkspaceDataset workspaceDataset = GetWorkspaceDataset(dataset);

            return(workspaceDataset == null
                                       ? null
                                       : ModelElementUtils.OpenObjectClass(FeatureWorkspace,
                                                                           workspaceDataset.Name,
                                                                           dataset));
        }
예제 #2
0
        public override Dataset GetDatasetByGdbName(string gdbDatasetName)
        {
            Assert.ArgumentNotNullOrEmpty(gdbDatasetName, nameof(gdbDatasetName));

            // TODO for query classes: translate owner part also (observed for pg: query class is always owned by *connected* user)
            string gdbTableName = ModelElementUtils.GetBaseTableName(gdbDatasetName);

            WorkspaceDataset workspaceDataset;

            return(_workspaceDatasetByGdbDatasetName.TryGetValue(
                       gdbTableName,
                       out workspaceDataset)
                                       ? workspaceDataset.Dataset
                                       : null);
        }
        public override IObjectClass OpenObjectClass(IObjectDataset dataset)
        {
            Assert.ArgumentNotNull(dataset, nameof(dataset));

            SpatialReferenceDescriptor spatialReferenceDescriptor =
                (dataset.Model as Model)?.SpatialReferenceDescriptor;

            return((IObjectClass)ModelElementUtils.OpenTable(
                       FeatureWorkspace,
                       GetGdbElementName(dataset),
                       dataset.GetAttribute(AttributeRole.ObjectID)?.Name,
                       spatialReferenceDescriptor));

            //return (IObjectClass) _workspaceProxy.OpenTable(
            //	GetGdbElementName(dataset),
            //	dataset.GetAttribute(AttributeRole.ObjectID)?.Name,
            //	spatialReferenceDescriptor);
        }
예제 #4
0
 public bool CanOpen(IDdxDataset dataset)
 {
     return(ModelElementUtils.CanOpenFromMasterDatabase(dataset));
 }
예제 #5
0
 public IRelationshipClass OpenRelationshipClass(Association association)
 {
     return(ModelElementUtils.TryOpenFromMasterDatabase(association));
 }
예제 #6
0
 public IRasterDataset OpenRasterDataset(IDdxRasterDataset dataset)
 {
     return(ModelElementUtils.TryOpenFromMasterDatabase(dataset));
 }
예제 #7
0
 public IObjectClass OpenObjectClass(IObjectDataset dataset)
 {
     return(ModelElementUtils.TryOpenFromMasterDatabase(dataset));
 }
예제 #8
0
 public ITable OpenTable(IObjectDataset dataset)
 {
     return((ITable)ModelElementUtils.TryOpenFromMasterDatabase(dataset));
 }
예제 #9
0
 public IFeatureClass OpenFeatureClass(IVectorDataset dataset)
 {
     return(ModelElementUtils.TryOpenFromMasterDatabase(dataset));
 }
        private string GetGdbElementName([NotNull] string modelElementName)
        {
            Assert.ArgumentNotNullOrEmpty(modelElementName, nameof(modelElementName));

            return(ModelElementUtils.TranslateToMasterDatabaseDatasetName(modelElementName, _model));
        }
예제 #11
0
        public IWorkspaceContext GetWorkspaceContext(IDdxDataset dataset)
        {
            Assert.ArgumentNotNull(dataset, nameof(dataset));

            return(ModelElementUtils.GetMasterDatabaseWorkspaceContext(dataset));
        }