protected HistoricalInfoMap loadTagInfo(Collection tagPaths, long startTime, long endTime) throws Exception {
long opStart = System.currentTimeMillis();
HistoricalInfoMap tagInfoMap = new HistoricalInfoMap();
this.maybeLoadIds();
SRConnection conn = null;
PreparedStatement stmt = null;
StringBuilder query = new StringBuilder();
String sQuery = null;
Set scanClassIdSet = new HashSet();
query.append(“SELECT a.
"
)
.
a
p
p
e
n
d
(
"
i
d
"
)
.
a
p
p
e
n
d
(
"
").append("id").append("
").append("id").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
t
a
g
p
a
t
h
"
)
.
a
p
p
e
n
d
(
"
"); query.append("tagpath").append("
");query.append("tagpath").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
d
a
t
a
t
y
p
e
"
)
.
a
p
p
e
n
d
(
"
"); query.append("datatype").append("
");query.append("datatype").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
s
c
i
d
"
)
.
a
p
p
e
n
d
(
"
"); query.append("scid").append("
");query.append("scid").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
q
u
e
r
y
m
o
d
e
"
)
.
a
p
p
e
n
d
(
"
"); query.append("querymode").append("
");query.append("querymode").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
c
r
e
a
t
e
d
"
)
.
a
p
p
e
n
d
(
"
"); query.append("created").append("
");query.append("created").append(",a.
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
r
e
t
i
r
e
d
"
)
;
q
u
e
r
y
.
a
p
p
e
n
d
(
"
"); query.append("retired"); query.append("
");query.append("retired");query.append(" FROM “).append(“sqlth_te”).append(” a,”).append(“sqlth_scinfo”);
query.append(" b WHERE (");
int totalCount;
if (tagPaths.size() > 0) {
for(totalCount = 0; totalCount < tagPaths.size(); ++totalCount) {
query.append(“a.
"
)
.
a
p
p
e
n
d
(
"
t
a
g
p
a
t
h
"
)
.
a
p
p
e
n
d
(
"
").append("tagpath").append("
").append("tagpath").append("=?”);
if (totalCount < tagPaths.size() - 1) {
query.append(" OR ");
}
}
} else {
query.append(“1=0”);
}
query.append(") AND (");
query.append("a.$").append("scid").append("$=0 OR ");
query.append("a.$").append("scid").append("$=b.$").append("id").append("$ AND ");
query.append("(");
for(totalCount = 0; totalCount < this.driverIdCache.length; ++totalCount) {
query.append("b.$").append("drvid").append("$=?");
if (totalCount < this.driverIdCache.length - 1) {
query.append(" OR ");
}
}
query.append(")").append(") ORDER BY a.$retired$ DESC");
totalCount = 0;
try {
sQuery = this.connProv.prepareQuery(query.toString());
conn = this.getConnection();
stmt = conn.prepareStatement(sQuery);
int j = 1;
Iterator var17 = tagPaths.iterator();
label211:
while(true) {
if (!var17.hasNext()) {