Skip to content

Commit 9f35184

Browse files
SupportsNamespaces
1 parent aea8a75 commit 9f35184

File tree

2 files changed

+60
-7
lines changed

2 files changed

+60
-7
lines changed

docs/CatalogImpl.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414

1515
* `SparkSession` is requested for the [Catalog](SparkSession.md#catalog)
1616

17-
## <span id="listColumns"> listColumns
17+
## listColumns { #listColumns }
1818

19-
??? note "Signature"
19+
??? note "Catalog"
2020

2121
```scala
2222
listColumns(
@@ -34,9 +34,9 @@
3434

3535
In the end, `listColumns` [makeDataset](#makeDataset) with the columns.
3636

37-
## <span id="getTable"> getTable
37+
## getTable { #getTable }
3838

39-
??? note "Signature"
39+
??? note "Catalog"
4040

4141
```scala
4242
getTable(
@@ -50,7 +50,7 @@ In the end, `listColumns` [makeDataset](#makeDataset) with the columns.
5050

5151
`getTable`...FIXME
5252

53-
## <span id="makeTable"> Looking Up Table
53+
## Looking Up Table { #makeTable }
5454

5555
```scala
5656
makeTable(
@@ -66,7 +66,7 @@ makeTable(
6666

6767
* `CatalogImpl` is requested to [listTables](#listTables) and [getTable](#getTable)
6868

69-
### <span id="loadTable"> loadTable
69+
### loadTable { #loadTable }
7070

7171
```scala
7272
loadTable(
@@ -76,6 +76,22 @@ loadTable(
7676

7777
`loadTable`...FIXME
7878

79+
## getNamespace { #getNamespace }
80+
81+
```scala
82+
getNamespace(
83+
catalog: CatalogPlugin,
84+
ns: Seq[String]): Database
85+
```
86+
87+
`getNamespace`...FIXME
88+
89+
---
90+
91+
`getNamespace` is used when:
92+
93+
* `CatalogImpl` is requested to [getDatabase](#getDatabase) and [listDatabases](#listDatabases)
94+
7995
<!---
8096
## Review Me
8197
Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,40 @@
11
# SupportsNamespaces
22

3-
`SupportsNamespaces` is...FIXME
3+
`SupportsNamespaces` is an [extension](#contract) of the [CatalogPlugin](CatalogPlugin.md) abstraction for [catalogs with namespace support](#implementations).
4+
5+
## Contract (Subset)
6+
7+
### listNamespaces { #listNamespaces }
8+
9+
```java
10+
String[][] listNamespaces()
11+
```
12+
13+
Lists the top-level namespaces from this catalog
14+
15+
Used when:
16+
17+
* `DelegatingCatalogExtension` is requested to [listNamespaces](DelegatingCatalogExtension.md#listNamespaces)
18+
* `SHOW NAMESPACES` command is executed
19+
20+
### loadNamespaceMetadata { #loadNamespaceMetadata }
21+
22+
```java
23+
Map<String, String> loadNamespaceMetadata(
24+
String[] namespace)
25+
```
26+
27+
Loads metadata properties for the namespace
28+
29+
Used when:
30+
31+
* `DelegatingCatalogExtension` is requested to [loadNamespaceMetadata](DelegatingCatalogExtension.md#loadNamespaceMetadata)
32+
* `SupportsNamespaces` is requested to [namespaceExists](#namespaceExists)
33+
* `DESCRIBE NAMESPACE` command is executed
34+
* `CatalogImpl` is requested to [getNamespace](../../CatalogImpl.md#getNamespace)
35+
36+
## Implementations
37+
38+
* [CatalogExtension](CatalogExtension.md)
39+
* [JDBCTableCatalog](../../jdbc/JDBCTableCatalog.md)
40+
* [V2SessionCatalog](../../V2SessionCatalog.md)

0 commit comments

Comments
 (0)