1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.plsql;
19
20 import lombok.Getter;
21 import lombok.RequiredArgsConstructor;
22 import lombok.Setter;
23 import org.apache.shardingsphere.sql.parser.sql.common.segment.SQLSegment;
24 import org.apache.shardingsphere.sql.parser.sql.common.segment.ddl.packages.PackageSegment;
25 import org.apache.shardingsphere.sql.parser.sql.common.value.identifier.IdentifierValue;
26
27 import java.util.Optional;
28
29
30
31
32 @RequiredArgsConstructor
33 @Getter
34 @Setter
35 public final class ProcedureCallNameSegment implements SQLSegment {
36
37 private final int startIndex;
38
39 private final int stopIndex;
40
41 private final IdentifierValue identifier;
42
43 private PackageSegment packageSegment;
44
45 public Optional<PackageSegment> getPackageSegment() {
46 return Optional.ofNullable(packageSegment);
47 }
48
49 @Override
50 public String toString() {
51 return getPackageSegment().map(optional -> optional.getIdentifier().getValueWithQuoteCharacters() + ".").orElse("") + identifier.getValueWithQuoteCharacters();
52 }
53 }