@@ -24,7 +24,8 @@ package org.apache.spark.sql.catalyst
24
24
* Format (unquoted): "name" or "db.name"
25
25
* Format (quoted): "`name`" or "`db`.`name`"
26
26
*/
27
- private [sql] abstract class IdentifierWithDatabase (name : String ) {
27
+ sealed trait IdentifierWithDatabase {
28
+ val name : String
28
29
def database : Option [String ]
29
30
def quotedString : String = database.map(db => s " ` $db`.` $name` " ).getOrElse(s " ` $name` " )
30
31
def unquotedString : String = database.map(db => s " $db. $name" ).getOrElse(name)
@@ -36,15 +37,16 @@ private[sql] abstract class IdentifierWithDatabase(name: String) {
36
37
* Identifies a table in a database.
37
38
* If `database` is not defined, the current database is used.
38
39
*/
39
- private [sql] case class TableIdentifier (
40
- table : String ,
41
- database : Option [ String ])
42
- extends IdentifierWithDatabase (table) {
40
+ case class TableIdentifier (table : String , database : Option [ String ])
41
+ extends IdentifierWithDatabase {
42
+
43
+ override val name : String = table
43
44
44
45
def this (name : String ) = this (name, None )
46
+
45
47
}
46
48
47
- private [sql] object TableIdentifier {
49
+ object TableIdentifier {
48
50
def apply (tableName : String ): TableIdentifier = new TableIdentifier (tableName)
49
51
}
50
52
@@ -53,14 +55,14 @@ private[sql] object TableIdentifier {
53
55
* Identifies a function in a database.
54
56
* If `database` is not defined, the current database is used.
55
57
*/
56
- private [sql] case class FunctionIdentifier (
57
- funcName : String ,
58
- database : Option [ String ])
59
- extends IdentifierWithDatabase (funcName) {
58
+ case class FunctionIdentifier (funcName : String , database : Option [ String ])
59
+ extends IdentifierWithDatabase {
60
+
61
+ override val name : String = funcName
60
62
61
63
def this (name : String ) = this (name, None )
62
64
}
63
65
64
- private [sql] object FunctionIdentifier {
66
+ object FunctionIdentifier {
65
67
def apply (funcName : String ): FunctionIdentifier = new FunctionIdentifier (funcName)
66
68
}
0 commit comments