Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
AliasGenerator.java
Go to the documentation of this file.
1
// Copyright 2014 Cloudera Inc.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
package
com.cloudera.impala.common;
16
17
import
java.util.Set;
18
19
import
com.google.common.base.Preconditions;
20
import
com.google.common.collect.Sets;
21
27
public
abstract
class
AliasGenerator
{
28
private
int
numGeneratedAliases_
= 1;
29
protected
String
aliasPrefix_
= null;
30
protected
Set<String>
usedAliases_
= Sets.newHashSet();
31
35
public
String
getNextAlias
() {
36
Preconditions.checkNotNull(
aliasPrefix_
);
37
while
(
true
) {
38
String candidateAlias =
aliasPrefix_
+ Integer.toString(
numGeneratedAliases_
++);
39
if
(
usedAliases_
.add(candidateAlias))
return
candidateAlias;
40
if
(
numGeneratedAliases_
< 0) {
41
throw
new
IllegalStateException(
"Overflow occured during alias generation."
);
42
}
43
}
44
}
45
}
com.cloudera.impala.common.AliasGenerator.getNextAlias
String getNextAlias()
Definition:
AliasGenerator.java:35
com.cloudera.impala.common.AliasGenerator.usedAliases_
Set< String > usedAliases_
Definition:
AliasGenerator.java:30
com.cloudera.impala.common.AliasGenerator.aliasPrefix_
String aliasPrefix_
Definition:
AliasGenerator.java:29
com.cloudera.impala.common.AliasGenerator.numGeneratedAliases_
int numGeneratedAliases_
Definition:
AliasGenerator.java:28
com.cloudera.impala.common.AliasGenerator
Definition:
AliasGenerator.java:27
fe
src
main
java
com
cloudera
impala
common
AliasGenerator.java
Generated on Thu May 7 2015 16:10:39 for Impala by
1.8.6