Lines 101-107
Link Here
|
101 |
import org.codehaus.plexus.util.FileUtils; |
101 |
import org.codehaus.plexus.util.FileUtils; |
102 |
import org.netbeans.api.annotations.common.CheckForNull; |
102 |
import org.netbeans.api.annotations.common.CheckForNull; |
103 |
import org.netbeans.api.annotations.common.NullAllowed; |
103 |
import org.netbeans.api.annotations.common.NullAllowed; |
104 |
import org.netbeans.api.annotations.common.SuppressWarnings; |
|
|
105 |
import org.netbeans.modules.maven.embedder.EmbedderFactory; |
104 |
import org.netbeans.modules.maven.embedder.EmbedderFactory; |
106 |
import org.netbeans.modules.maven.embedder.MavenEmbedder; |
105 |
import org.netbeans.modules.maven.embedder.MavenEmbedder; |
107 |
import org.netbeans.modules.maven.indexer.api.NBArtifactInfo; |
106 |
import org.netbeans.modules.maven.indexer.api.NBArtifactInfo; |
Lines 110-116
Link Here
|
110 |
import org.netbeans.modules.maven.indexer.api.QueryField; |
109 |
import org.netbeans.modules.maven.indexer.api.QueryField; |
111 |
import org.netbeans.modules.maven.indexer.api.RepositoryInfo; |
110 |
import org.netbeans.modules.maven.indexer.api.RepositoryInfo; |
112 |
import org.netbeans.modules.maven.indexer.api.RepositoryPreferences; |
111 |
import org.netbeans.modules.maven.indexer.api.RepositoryPreferences; |
113 |
import org.netbeans.modules.maven.indexer.api.RepositoryQueries.Result; |
|
|
114 |
import org.netbeans.modules.maven.indexer.spi.ArchetypeQueries; |
112 |
import org.netbeans.modules.maven.indexer.spi.ArchetypeQueries; |
115 |
import org.netbeans.modules.maven.indexer.spi.BaseQueries; |
113 |
import org.netbeans.modules.maven.indexer.spi.BaseQueries; |
116 |
import org.netbeans.modules.maven.indexer.spi.ChecksumQueries; |
114 |
import org.netbeans.modules.maven.indexer.spi.ChecksumQueries; |
Lines 119-126
Link Here
|
119 |
import org.netbeans.modules.maven.indexer.spi.ContextLoadedQuery; |
117 |
import org.netbeans.modules.maven.indexer.spi.ContextLoadedQuery; |
120 |
import org.netbeans.modules.maven.indexer.spi.DependencyInfoQueries; |
118 |
import org.netbeans.modules.maven.indexer.spi.DependencyInfoQueries; |
121 |
import org.netbeans.modules.maven.indexer.spi.GenericFindQuery; |
119 |
import org.netbeans.modules.maven.indexer.spi.GenericFindQuery; |
122 |
import org.netbeans.modules.maven.indexer.spi.Redo; |
120 |
import org.netbeans.modules.maven.indexer.spi.impl.RepositoryIndexerImplementation; |
123 |
import org.netbeans.modules.maven.indexer.spi.RepositoryIndexerImplementation; |
121 |
import org.netbeans.modules.maven.indexer.spi.ResultImplementation; |
|
|
122 |
import org.netbeans.modules.maven.indexer.spi.impl.Redo; |
124 |
import org.netbeans.modules.maven.indexer.spi.impl.IndexingNotificationProvider; |
123 |
import org.netbeans.modules.maven.indexer.spi.impl.IndexingNotificationProvider; |
125 |
import org.openide.modules.Places; |
124 |
import org.openide.modules.Places; |
126 |
import org.openide.util.BaseUtilities; |
125 |
import org.openide.util.BaseUtilities; |
Lines 132-190
Link Here
|
132 |
import org.openide.util.lookup.ServiceProvider; |
131 |
import org.openide.util.lookup.ServiceProvider; |
133 |
import org.openide.util.lookup.ServiceProviders; |
132 |
import org.openide.util.lookup.ServiceProviders; |
134 |
import org.openide.util.NbBundle.Messages; |
133 |
import org.openide.util.NbBundle.Messages; |
|
|
134 |
import org.netbeans.modules.maven.indexer.spi.RepositoryIndexQueryProvider; |
135 |
|
135 |
|
136 |
@ServiceProviders({ |
136 |
@ServiceProviders({ |
137 |
@ServiceProvider(service=RepositoryIndexerImplementation.class), |
137 |
@ServiceProvider(service=RepositoryIndexerImplementation.class), |
138 |
@ServiceProvider(service=BaseQueries.class), |
138 |
@ServiceProvider(service=RepositoryIndexQueryProvider.class, position = Integer.MAX_VALUE) |
139 |
@ServiceProvider(service=ChecksumQueries.class), |
|
|
140 |
@ServiceProvider(service=ArchetypeQueries.class), |
141 |
@ServiceProvider(service=DependencyInfoQueries.class), |
142 |
@ServiceProvider(service=ClassesQuery.class), |
143 |
@ServiceProvider(service=ClassUsageQuery.class), |
144 |
@ServiceProvider(service=GenericFindQuery.class), |
145 |
@ServiceProvider(service=ContextLoadedQuery.class) |
146 |
}) |
139 |
}) |
147 |
public class NexusRepositoryIndexerImpl implements RepositoryIndexerImplementation, |
140 |
public class NexusRepositoryIndexerImpl implements RepositoryIndexerImplementation, RepositoryIndexQueryProvider, |
148 |
BaseQueries, ChecksumQueries, ArchetypeQueries, DependencyInfoQueries, |
141 |
BaseQueries, ChecksumQueries, ArchetypeQueries, DependencyInfoQueries, |
149 |
ClassesQuery, ClassUsageQuery, GenericFindQuery, ContextLoadedQuery { |
142 |
ClassesQuery, ClassUsageQuery, GenericFindQuery, ContextLoadedQuery { |
150 |
|
143 |
|
151 |
|
|
|
152 |
public static abstract class Accessor { |
153 |
|
154 |
@SuppressWarnings("MS_SHOULD_BE_FINAL") |
155 |
public static Accessor ACCESSOR; |
156 |
|
157 |
protected Accessor() { |
158 |
ACCESSOR = this; |
159 |
} |
160 |
|
161 |
public abstract void addSkipped(Result<?> result, Collection<RepositoryInfo> infos); |
162 |
|
163 |
public abstract List<RepositoryInfo> getSkipped(Result<?> result); |
164 |
|
165 |
public abstract void setStringResults(Result<String> result, Collection<String> newResults); |
166 |
|
167 |
public abstract void setVersionResults(Result<NBVersionInfo> result, Collection<NBVersionInfo> newResults); |
168 |
|
169 |
public abstract void addSkipped(Result<?> result, RepositoryInfo info); |
170 |
|
171 |
public abstract Result<String> createStringResult(Redo<String> redo); |
172 |
|
173 |
public abstract Result<NBVersionInfo> createVersionResult(Redo<NBVersionInfo> redo); |
174 |
|
175 |
public abstract Result<NBGroupInfo> createGroupResult(Redo<NBGroupInfo> redo); |
176 |
|
177 |
public abstract void setGroupResults(Result<NBGroupInfo> result, Collection<NBGroupInfo> newResults); |
178 |
|
179 |
public abstract Result<RepositoryQueries.ClassUsage> createClassResult(Redo<RepositoryQueries.ClassUsage> redo); |
180 |
|
181 |
public abstract void setClassResults(Result<RepositoryQueries.ClassUsage> result, Collection<RepositoryQueries.ClassUsage> newResults); |
182 |
|
183 |
public abstract void addTotalResults(Result<?> result, int moreResults); |
184 |
|
185 |
public abstract void addReturnedResults(Result<?> result, int moreResults); |
186 |
} |
187 |
|
188 |
private static final Logger LOGGER = Logger.getLogger(NexusRepositoryIndexerImpl.class.getName()); |
144 |
private static final Logger LOGGER = Logger.getLogger(NexusRepositoryIndexerImpl.class.getName()); |
189 |
|
145 |
|
190 |
static { |
146 |
static { |
Lines 215-220
Link Here
|
215 |
private static final Set<Mutex> indexingMutexes = new HashSet<Mutex>(); |
171 |
private static final Set<Mutex> indexingMutexes = new HashSet<Mutex>(); |
216 |
private static final RequestProcessor RP = new RequestProcessor("indexing", 1); |
172 |
private static final RequestProcessor RP = new RequestProcessor("indexing", 1); |
217 |
|
173 |
|
|
|
174 |
@Override |
175 |
public boolean handlesRepository(RepositoryInfo repo) { |
176 |
// should always come as last when looked up |
177 |
// handles all remote repos |
178 |
return true; |
179 |
} |
180 |
|
181 |
@Override |
182 |
public BaseQueries getBaseQueries() { |
183 |
return this; |
184 |
} |
185 |
|
186 |
@Override |
187 |
public ChecksumQueries getChecksumQueries() { |
188 |
return this; |
189 |
} |
190 |
|
191 |
@Override |
192 |
public ArchetypeQueries getArchetypeQueries() { |
193 |
return this; |
194 |
} |
195 |
|
196 |
@Override |
197 |
public DependencyInfoQueries getDependencyInfoQueries() { |
198 |
return this; |
199 |
} |
200 |
|
201 |
@Override |
202 |
public ClassesQuery getClassesQuery() { |
203 |
return this; |
204 |
} |
205 |
|
206 |
@Override |
207 |
public ClassUsageQuery getClassUsageQuery() { |
208 |
return this; |
209 |
} |
210 |
|
211 |
@Override |
212 |
public GenericFindQuery getGenericFindQuery() { |
213 |
return this; |
214 |
} |
215 |
|
216 |
@Override |
217 |
public ContextLoadedQuery getContextLoadedQuery() { |
218 |
return this; |
219 |
} |
220 |
|
218 |
private Mutex getRepoMutex(RepositoryInfo repo) { |
221 |
private Mutex getRepoMutex(RepositoryInfo repo) { |
219 |
return getRepoMutex(repo.getId()); |
222 |
return getRepoMutex(repo.getId()); |
220 |
} |
223 |
} |
Lines 911-917
Link Here
|
911 |
} |
914 |
} |
912 |
|
915 |
|
913 |
@Override |
916 |
@Override |
914 |
public RepositoryQueries.Result<String> getGroups(List<RepositoryInfo> repos) { |
917 |
public ResultImplementation<String> getGroups(List<RepositoryInfo> repos) { |
915 |
return filterGroupIds("", repos); |
918 |
return filterGroupIds("", repos); |
916 |
} |
919 |
} |
917 |
|
920 |
|
Lines 969-985
Link Here
|
969 |
} |
972 |
} |
970 |
|
973 |
|
971 |
@Override |
974 |
@Override |
972 |
public RepositoryQueries.Result<String> filterGroupIds(final String prefix, final List<RepositoryInfo> repos) { |
975 |
public ResultImplementation<String> filterGroupIds(final String prefix, final List<RepositoryInfo> repos) { |
973 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
976 |
Redo<String> redo = new Redo<String>() { |
974 |
@Override |
977 |
@Override |
975 |
public void run(Result<String> result) { |
978 |
public void run(ResultImpl<String> result) { |
976 |
filterGroupIds(prefix, result, Accessor.ACCESSOR.getSkipped(result), false); |
979 |
filterGroupIds(prefix, result, result.getSkipped(), false); |
977 |
} |
980 |
} |
978 |
}); |
981 |
}; |
|
|
982 |
ResultImpl<String> result = new ResultImpl<String>(redo); |
979 |
return filterGroupIds(prefix, result, repos, true); |
983 |
return filterGroupIds(prefix, result, repos, true); |
980 |
} |
984 |
} |
981 |
|
985 |
|
982 |
private RepositoryQueries.Result<String> filterGroupIds(final String prefix, final RepositoryQueries.Result<String> result, |
986 |
private ResultImplementation<String> filterGroupIds(final String prefix, final ResultImpl<String> result, |
983 |
final List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
987 |
final List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
984 |
final Set<String> groups = new TreeSet<String>(result.getResults()); |
988 |
final Set<String> groups = new TreeSet<String>(result.getResults()); |
985 |
final List<RepositoryInfo> slowCheck = new ArrayList<RepositoryInfo>(); |
989 |
final List<RepositoryInfo> slowCheck = new ArrayList<RepositoryInfo>(); |
Lines 1022-1043
Link Here
|
1022 |
// } |
1026 |
// } |
1023 |
// }, skipAction, skipUnIndexed); |
1027 |
// }, skipAction, skipUnIndexed); |
1024 |
|
1028 |
|
1025 |
Accessor.ACCESSOR.setStringResults(result, groups); |
1029 |
result.setResults(groups); |
1026 |
return result; |
1030 |
return result; |
1027 |
} |
1031 |
} |
1028 |
|
1032 |
|
1029 |
@Override |
1033 |
@Override |
1030 |
public Result<String> getGAVsForPackaging(final String packaging, List<RepositoryInfo> repos) { |
1034 |
public ResultImplementation<String> getGAVsForPackaging(final String packaging, List<RepositoryInfo> repos) { |
1031 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
1035 |
ResultImpl<String> result = new ResultImpl<>(new Redo<String>() { |
1032 |
@Override |
1036 |
@Override |
1033 |
public void run(Result<String> result) { |
1037 |
public void run(ResultImpl<String> result) { |
1034 |
getGAVsForPackaging(packaging, result, Accessor.ACCESSOR.getSkipped(result), false); |
1038 |
getGAVsForPackaging(packaging, result, result.getSkipped(), false); |
1035 |
} |
1039 |
} |
1036 |
}); |
1040 |
}); |
1037 |
return getGAVsForPackaging(packaging,result, repos, true); |
1041 |
return getGAVsForPackaging(packaging,result, repos, true); |
1038 |
} |
1042 |
} |
1039 |
|
1043 |
|
1040 |
private Result<String> getGAVsForPackaging(final String packaging, final Result<String> result, |
1044 |
private ResultImplementation<String> getGAVsForPackaging(final String packaging, final ResultImpl<String> result, |
1041 |
List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1045 |
List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1042 |
final List<String> infos = new ArrayList<String>(result.getResults()); |
1046 |
final List<String> infos = new ArrayList<String>(result.getResults()); |
1043 |
final SkippedAction skipAction = new SkippedAction(result); |
1047 |
final SkippedAction skipAction = new SkippedAction(result); |
Lines 1055-1084
Link Here
|
1055 |
} |
1059 |
} |
1056 |
} |
1060 |
} |
1057 |
} finally { |
1061 |
} finally { |
1058 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1062 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1059 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1063 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1060 |
response.close(); |
1064 |
response.close(); |
1061 |
} |
1065 |
} |
1062 |
} |
1066 |
} |
1063 |
} |
1067 |
} |
1064 |
}, skipAction, skipUnIndexed); |
1068 |
}, skipAction, skipUnIndexed); |
1065 |
Accessor.ACCESSOR.setStringResults(result, infos); |
1069 |
result.setResults(infos); |
1066 |
return result; |
1070 |
return result; |
1067 |
} |
1071 |
} |
1068 |
|
1072 |
|
1069 |
|
|
|
1070 |
@Override |
1073 |
@Override |
1071 |
public Result<NBVersionInfo> getRecords(final String groupId, final String artifactId, final String version, List<RepositoryInfo> repos) { |
1074 |
public ResultImplementation<NBVersionInfo> getRecords(final String groupId, final String artifactId, final String version, List<RepositoryInfo> repos) { |
1072 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1075 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1073 |
@Override |
1076 |
@Override |
1074 |
public void run(Result<NBVersionInfo> result) { |
1077 |
public void run(ResultImpl<NBVersionInfo> result) { |
1075 |
getRecords(groupId, artifactId, version, result, Accessor.ACCESSOR.getSkipped(result), false); |
1078 |
getRecords(groupId, artifactId, version, result, result.getSkipped(), false); |
1076 |
} |
1079 |
} |
1077 |
}); |
1080 |
}); |
1078 |
return getRecords(groupId, artifactId, version, result, repos, true); |
1081 |
return getRecords(groupId, artifactId, version, result, repos, true); |
1079 |
} |
1082 |
} |
1080 |
|
1083 |
|
1081 |
private Result<NBVersionInfo> getRecords(final String groupId, final String artifactId, final String version, final Result<NBVersionInfo> result, |
1084 |
private ResultImplementation<NBVersionInfo> getRecords(final String groupId, final String artifactId, final String version, final ResultImpl<NBVersionInfo> result, |
1082 |
List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1085 |
List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1083 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1086 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1084 |
final SkippedAction skipAction = new SkippedAction(result); |
1087 |
final SkippedAction skipAction = new SkippedAction(result); |
Lines 1094-1123
Link Here
|
1094 |
infos.add(convertToNBVersionInfo(ai)); |
1097 |
infos.add(convertToNBVersionInfo(ai)); |
1095 |
} |
1098 |
} |
1096 |
} finally { |
1099 |
} finally { |
1097 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1100 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1098 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1101 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1099 |
response.close(); |
1102 |
response.close(); |
1100 |
} |
1103 |
} |
1101 |
} |
1104 |
} |
1102 |
} |
1105 |
} |
1103 |
}, skipAction, skipUnIndexed); |
1106 |
}, skipAction, skipUnIndexed); |
1104 |
doSortIssue226100(infos); |
1107 |
doSortIssue226100(infos); |
1105 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1108 |
result.setResults(infos); |
1106 |
return result; |
1109 |
return result; |
1107 |
} |
1110 |
} |
1108 |
|
1111 |
|
1109 |
@Override |
1112 |
@Override |
1110 |
public RepositoryQueries.Result<String> getArtifacts(final String groupId, final List<RepositoryInfo> repos) { |
1113 |
public ResultImplementation<String> getArtifacts(final String groupId, final List<RepositoryInfo> repos) { |
1111 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
1114 |
ResultImpl<String> result = new ResultImpl<>(new Redo<String>() { |
1112 |
@Override |
1115 |
@Override |
1113 |
public void run(Result<String> result) { |
1116 |
public void run(ResultImpl<String> result) { |
1114 |
getArtifacts(groupId, result, Accessor.ACCESSOR.getSkipped(result), false); |
1117 |
getArtifacts(groupId, result, result.getSkipped(), false); |
1115 |
} |
1118 |
} |
1116 |
}); |
1119 |
}); |
1117 |
return getArtifacts(groupId, result, repos, true); |
1120 |
return getArtifacts(groupId, result, repos, true); |
1118 |
} |
1121 |
} |
1119 |
|
1122 |
|
1120 |
private RepositoryQueries.Result<String> getArtifacts(final String groupId, final Result<String> result, final List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1123 |
private ResultImplementation<String> getArtifacts(final String groupId, final ResultImpl<String> result, final List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1121 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1124 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1122 |
final SkippedAction skipAction = new SkippedAction(result); |
1125 |
final SkippedAction skipAction = new SkippedAction(result); |
1123 |
iterate(repos, new RepoAction() { |
1126 |
iterate(repos, new RepoAction() { |
Lines 1138-1158
Link Here
|
1138 |
} |
1141 |
} |
1139 |
} |
1142 |
} |
1140 |
}, skipAction, skipUnIndexed); |
1143 |
}, skipAction, skipUnIndexed); |
1141 |
Accessor.ACCESSOR.setStringResults(result, artifacts); |
1144 |
result.setResults(artifacts); |
1142 |
return result; |
1145 |
return result; |
1143 |
} |
1146 |
} |
1144 |
|
1147 |
|
1145 |
@Override |
1148 |
@Override |
1146 |
public RepositoryQueries.Result<NBVersionInfo> getVersions(final String groupId, final String artifactId, List<RepositoryInfo> repos) { |
1149 |
public ResultImplementation<NBVersionInfo> getVersions(final String groupId, final String artifactId, List<RepositoryInfo> repos) { |
1147 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1150 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1148 |
@Override |
1151 |
@Override |
1149 |
public void run(Result<NBVersionInfo> result) { |
1152 |
public void run(ResultImpl<NBVersionInfo> result) { |
1150 |
getVersions(groupId, artifactId, result, Accessor.ACCESSOR.getSkipped(result), false); |
1153 |
getVersions(groupId, artifactId, result, result.getSkipped(), false); |
1151 |
} |
1154 |
} |
1152 |
}); |
1155 |
}); |
1153 |
return getVersions(groupId, artifactId, result, repos, true); |
1156 |
return getVersions(groupId, artifactId, result, repos, true); |
1154 |
} |
1157 |
} |
1155 |
private RepositoryQueries.Result<NBVersionInfo> getVersions(final String groupId, final String artifactId, final Result<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1158 |
private ResultImplementation<NBVersionInfo> getVersions(final String groupId, final String artifactId, final ResultImpl<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1156 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1159 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1157 |
final SkippedAction skipAction = new SkippedAction(result); |
1160 |
final SkippedAction skipAction = new SkippedAction(result); |
1158 |
iterate(repos, new RepoAction() { |
1161 |
iterate(repos, new RepoAction() { |
Lines 1167-1196
Link Here
|
1167 |
infos.add(convertToNBVersionInfo(ai)); |
1170 |
infos.add(convertToNBVersionInfo(ai)); |
1168 |
} |
1171 |
} |
1169 |
} finally { |
1172 |
} finally { |
1170 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1173 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1171 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1174 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1172 |
response.close(); |
1175 |
response.close(); |
1173 |
} |
1176 |
} |
1174 |
} |
1177 |
} |
1175 |
} |
1178 |
} |
1176 |
}, skipAction, skipUnIndexed); |
1179 |
}, skipAction, skipUnIndexed); |
1177 |
doSortIssue226100(infos); |
1180 |
doSortIssue226100(infos); |
1178 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1181 |
result.setResults(infos); |
1179 |
return result; |
1182 |
return result; |
1180 |
} |
1183 |
} |
1181 |
|
1184 |
|
1182 |
@Override |
1185 |
@Override |
1183 |
public RepositoryQueries.Result<NBVersionInfo> findVersionsByClass(final String className, List<RepositoryInfo> repos) { |
1186 |
public ResultImplementation<NBVersionInfo> findVersionsByClass(final String className, List<RepositoryInfo> repos) { |
1184 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1187 |
ResultImpl<NBVersionInfo> result = new ResultImpl(new Redo<NBVersionInfo>() { |
1185 |
@Override |
1188 |
@Override |
1186 |
public void run(Result<NBVersionInfo> result) { |
1189 |
public void run(ResultImpl<NBVersionInfo> result) { |
1187 |
findVersionsByClass(className, result, Accessor.ACCESSOR.getSkipped(result), false); |
1190 |
findVersionsByClass(className, result, result.getSkipped(), false); |
1188 |
} |
1191 |
} |
1189 |
}); |
1192 |
}); |
1190 |
return findVersionsByClass(className, result, repos, true); |
1193 |
return findVersionsByClass(className, result, repos, true); |
1191 |
} |
1194 |
} |
1192 |
|
1195 |
|
1193 |
private RepositoryQueries.Result<NBVersionInfo> findVersionsByClass(final String className, final Result<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1196 |
private ResultImplementation<NBVersionInfo> findVersionsByClass(final String className, final ResultImpl<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1194 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1197 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1195 |
final SkippedAction skipAction = new SkippedAction(result); |
1198 |
final SkippedAction skipAction = new SkippedAction(result); |
1196 |
iterate(repos, new RepoAction() { |
1199 |
iterate(repos, new RepoAction() { |
Lines 1212-1242
Link Here
|
1212 |
infos.addAll(postProcessClasses(response.getResults(), clsname)); |
1215 |
infos.addAll(postProcessClasses(response.getResults(), clsname)); |
1213 |
} finally { |
1216 |
} finally { |
1214 |
//?? really count in this case? |
1217 |
//?? really count in this case? |
1215 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1218 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1216 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1219 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1217 |
response.close(); |
1220 |
response.close(); |
1218 |
} |
1221 |
} |
1219 |
} |
1222 |
} |
1220 |
} |
1223 |
} |
1221 |
}, skipAction, skipUnIndexed); |
1224 |
}, skipAction, skipUnIndexed); |
1222 |
doSortIssue226100(infos); |
1225 |
doSortIssue226100(infos); |
1223 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1226 |
result.setResults(infos); |
1224 |
return result; |
1227 |
return result; |
1225 |
} |
1228 |
} |
1226 |
|
1229 |
|
1227 |
@Override |
1230 |
@Override |
1228 |
public RepositoryQueries.Result<RepositoryQueries.ClassUsage> findClassUsages(final String className, @NullAllowed List<RepositoryInfo> repos) { |
1231 |
public ResultImplementation<RepositoryQueries.ClassUsage> findClassUsages(final String className, @NullAllowed List<RepositoryInfo> repos) { |
1229 |
RepositoryQueries.Result<RepositoryQueries.ClassUsage> result = Accessor.ACCESSOR.createClassResult(new Redo<RepositoryQueries.ClassUsage>() { |
1232 |
ResultImpl<RepositoryQueries.ClassUsage> result = new ResultImpl<>(new Redo<RepositoryQueries.ClassUsage>() { |
1230 |
@Override |
1233 |
@Override |
1231 |
public void run(Result<RepositoryQueries.ClassUsage> result) { |
1234 |
public void run(ResultImpl<RepositoryQueries.ClassUsage> result) { |
1232 |
findClassUsages(className, result, Accessor.ACCESSOR.getSkipped(result), false); |
1235 |
findClassUsages(className, result, result.getSkipped(), false); |
1233 |
} |
1236 |
} |
1234 |
}); |
1237 |
}); |
1235 |
return findClassUsages(className, result, repos, true); |
1238 |
return findClassUsages(className, result, repos, true); |
1236 |
|
1239 |
|
1237 |
} |
1240 |
} |
1238 |
|
1241 |
|
1239 |
private RepositoryQueries.Result<RepositoryQueries.ClassUsage> findClassUsages(final String className, Result<RepositoryQueries.ClassUsage> result, @NullAllowed List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1242 |
private ResultImplementation<RepositoryQueries.ClassUsage> findClassUsages(final String className, ResultImpl<RepositoryQueries.ClassUsage> result, @NullAllowed List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1240 |
List<RepositoryInfo> localRepos = new ArrayList<RepositoryInfo>(); |
1243 |
List<RepositoryInfo> localRepos = new ArrayList<RepositoryInfo>(); |
1241 |
if (repos == null) { |
1244 |
if (repos == null) { |
1242 |
repos = RepositoryPreferences.getInstance().getRepositoryInfos(); |
1245 |
repos = RepositoryPreferences.getInstance().getRepositoryInfos(); |
Lines 1258-1278
Link Here
|
1258 |
return r1.getArtifact().compareTo(r2.getArtifact()); |
1261 |
return r1.getArtifact().compareTo(r2.getArtifact()); |
1259 |
} |
1262 |
} |
1260 |
}); |
1263 |
}); |
1261 |
Accessor.ACCESSOR.setClassResults(result, results); |
1264 |
result.setResults(results); |
1262 |
return result; |
1265 |
return result; |
1263 |
} |
1266 |
} |
1264 |
|
1267 |
|
1265 |
@Override |
1268 |
@Override |
1266 |
public RepositoryQueries.Result<NBVersionInfo> findDependencyUsage(final String groupId, final String artifactId, final String version, @NullAllowed List<RepositoryInfo> repos) { |
1269 |
public ResultImplementation<NBVersionInfo> findDependencyUsage(final String groupId, final String artifactId, final String version, @NullAllowed List<RepositoryInfo> repos) { |
1267 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1270 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1268 |
@Override |
1271 |
@Override |
1269 |
public void run(Result<NBVersionInfo> result) { |
1272 |
public void run(ResultImpl<NBVersionInfo> result) { |
1270 |
findDependencyUsage(groupId, artifactId, version, result, Accessor.ACCESSOR.getSkipped(result), false); |
1273 |
findDependencyUsage(groupId, artifactId, version, result, result.getSkipped(), false); |
1271 |
} |
1274 |
} |
1272 |
}); |
1275 |
}); |
1273 |
return findDependencyUsage(groupId, artifactId, version, result, repos, true); |
1276 |
return findDependencyUsage(groupId, artifactId, version, result, repos, true); |
1274 |
} |
1277 |
} |
1275 |
private RepositoryQueries.Result<NBVersionInfo> findDependencyUsage(String groupId, String artifactId, String version, final Result<NBVersionInfo> result, @NullAllowed List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1278 |
private ResultImplementation<NBVersionInfo> findDependencyUsage(String groupId, String artifactId, String version, final ResultImpl<NBVersionInfo> result, @NullAllowed List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1276 |
final Query q = ArtifactDependencyIndexCreator.query(groupId, artifactId, version); |
1279 |
final Query q = ArtifactDependencyIndexCreator.query(groupId, artifactId, version); |
1277 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1280 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1278 |
final SkippedAction skipAction = new SkippedAction(result); |
1281 |
final SkippedAction skipAction = new SkippedAction(result); |
Lines 1285-1321
Link Here
|
1285 |
infos.add(convertToNBVersionInfo(ai)); |
1288 |
infos.add(convertToNBVersionInfo(ai)); |
1286 |
} |
1289 |
} |
1287 |
} finally { |
1290 |
} finally { |
1288 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1291 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1289 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1292 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1290 |
response.close(); |
1293 |
response.close(); |
1291 |
} |
1294 |
} |
1292 |
} |
1295 |
} |
1293 |
} |
1296 |
} |
1294 |
}, skipAction, skipUnIndexed); |
1297 |
}, skipAction, skipUnIndexed); |
1295 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1298 |
result.setResults(infos); |
1296 |
return result; |
1299 |
return result; |
1297 |
} |
1300 |
} |
1298 |
|
1301 |
|
1299 |
@Override |
1302 |
@Override |
1300 |
public Result<NBGroupInfo> findDependencyUsageGroups(final String groupId, final String artifactId, final String version, List<RepositoryInfo> repos) { |
1303 |
public ResultImplementation<NBGroupInfo> findDependencyUsageGroups(final String groupId, final String artifactId, final String version, List<RepositoryInfo> repos) { |
1301 |
RepositoryQueries.Result<NBGroupInfo> result = Accessor.ACCESSOR.createGroupResult(new Redo<NBGroupInfo>() { |
1304 |
ResultImpl<NBGroupInfo> result = new ResultImpl<>(new Redo<NBGroupInfo>() { |
1302 |
@Override |
1305 |
@Override |
1303 |
public void run(Result<NBGroupInfo> result) { |
1306 |
public void run(ResultImpl<NBGroupInfo> result) { |
1304 |
findDependencyUsageGroups(groupId, artifactId, version, result, Accessor.ACCESSOR.getSkipped(result), false); |
1307 |
findDependencyUsageGroups(groupId, artifactId, version, result, result.getSkipped(), false); |
1305 |
} |
1308 |
} |
1306 |
}); |
1309 |
}); |
1307 |
return findDependencyUsageGroups(groupId, artifactId, version, result, repos, true); |
1310 |
return findDependencyUsageGroups(groupId, artifactId, version, result, repos, true); |
1308 |
} |
1311 |
} |
1309 |
|
1312 |
|
1310 |
private Result<NBGroupInfo> findDependencyUsageGroups(String groupId, String artifactId, String version, Result<NBGroupInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1313 |
private ResultImplementation<NBGroupInfo> findDependencyUsageGroups(String groupId, String artifactId, String version, ResultImpl<NBGroupInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1311 |
//tempmaps |
1314 |
//tempmaps |
1312 |
Map<String, NBGroupInfo> groupMap = new HashMap<String, NBGroupInfo>(); |
1315 |
Map<String, NBGroupInfo> groupMap = new HashMap<String, NBGroupInfo>(); |
1313 |
Map<String, NBArtifactInfo> artifactMap = new HashMap<String, NBArtifactInfo>(); |
1316 |
Map<String, NBArtifactInfo> artifactMap = new HashMap<String, NBArtifactInfo>(); |
1314 |
List<NBGroupInfo> groupInfos = new ArrayList<NBGroupInfo>(result.getResults()); |
1317 |
List<NBGroupInfo> groupInfos = new ArrayList<NBGroupInfo>(result.getResults()); |
1315 |
Result<NBVersionInfo> res = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1318 |
ResultImpl<NBVersionInfo> res = new ResultImpl(new Redo<NBVersionInfo>() { |
1316 |
|
1319 |
|
1317 |
@Override |
1320 |
@Override |
1318 |
public void run(Result<NBVersionInfo> result) { |
1321 |
public void run(ResultImpl<NBVersionInfo> result) { |
1319 |
//noop will not be called |
1322 |
//noop will not be called |
1320 |
} |
1323 |
} |
1321 |
}); |
1324 |
}); |
Lines 1323-1331
Link Here
|
1323 |
convertToNBGroupInfo(res.getResults(), |
1326 |
convertToNBGroupInfo(res.getResults(), |
1324 |
groupMap, artifactMap, groupInfos); |
1327 |
groupMap, artifactMap, groupInfos); |
1325 |
if (res.isPartial()) { |
1328 |
if (res.isPartial()) { |
1326 |
Accessor.ACCESSOR.addSkipped(result, Accessor.ACCESSOR.getSkipped(res)); |
1329 |
result.addSkipped(res.getSkipped()); |
1327 |
} |
1330 |
} |
1328 |
Accessor.ACCESSOR.setGroupResults(result, groupInfos); |
1331 |
result.setResults(groupInfos); |
1329 |
return result; |
1332 |
return result; |
1330 |
|
1333 |
|
1331 |
} |
1334 |
} |
Lines 1357-1373
Link Here
|
1357 |
|
1360 |
|
1358 |
|
1361 |
|
1359 |
@Override |
1362 |
@Override |
1360 |
public RepositoryQueries.Result<NBVersionInfo> findBySHA1(final String sha1, List<RepositoryInfo> repos) { |
1363 |
public ResultImplementation<NBVersionInfo> findBySHA1(final String sha1, List<RepositoryInfo> repos) { |
1361 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1364 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1362 |
@Override |
1365 |
@Override |
1363 |
public void run(Result<NBVersionInfo> result) { |
1366 |
public void run(ResultImpl<NBVersionInfo> result) { |
1364 |
findBySHA1(sha1, result, Accessor.ACCESSOR.getSkipped(result), false); |
1367 |
findBySHA1(sha1, result, result.getSkipped(), false); |
1365 |
} |
1368 |
} |
1366 |
}); |
1369 |
}); |
1367 |
return findBySHA1(sha1, result, repos, true); |
1370 |
return findBySHA1(sha1, result, repos, true); |
1368 |
} |
1371 |
} |
1369 |
|
1372 |
|
1370 |
private RepositoryQueries.Result<NBVersionInfo> findBySHA1(final String sha1, final Result<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1373 |
private ResultImplementation<NBVersionInfo> findBySHA1(final String sha1, final ResultImpl<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1371 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1374 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1372 |
final SkippedAction skipAction = new SkippedAction(result); |
1375 |
final SkippedAction skipAction = new SkippedAction(result); |
1373 |
iterate(repos, new RepoAction() { |
1376 |
iterate(repos, new RepoAction() { |
Lines 1381-1410
Link Here
|
1381 |
infos.add(convertToNBVersionInfo(ai)); |
1384 |
infos.add(convertToNBVersionInfo(ai)); |
1382 |
} |
1385 |
} |
1383 |
} finally { |
1386 |
} finally { |
1384 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1387 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1385 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1388 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1386 |
response.close(); |
1389 |
response.close(); |
1387 |
} |
1390 |
} |
1388 |
} |
1391 |
} |
1389 |
} |
1392 |
} |
1390 |
}, skipAction, skipUnIndexed); |
1393 |
}, skipAction, skipUnIndexed); |
1391 |
doSortIssue226100(infos); |
1394 |
doSortIssue226100(infos); |
1392 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1395 |
result.setResults(infos); |
1393 |
return result; |
1396 |
return result; |
1394 |
} |
1397 |
} |
1395 |
|
1398 |
|
1396 |
@Override |
1399 |
@Override |
1397 |
public RepositoryQueries.Result<NBVersionInfo> findArchetypes(List<RepositoryInfo> repos) { |
1400 |
public ResultImplementation<NBVersionInfo> findArchetypes(List<RepositoryInfo> repos) { |
1398 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1401 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1399 |
@Override |
1402 |
@Override |
1400 |
public void run(Result<NBVersionInfo> result) { |
1403 |
public void run(ResultImpl<NBVersionInfo> result) { |
1401 |
findArchetypes( result, Accessor.ACCESSOR.getSkipped(result), false); |
1404 |
findArchetypes( result, result.getSkipped(), false); |
1402 |
} |
1405 |
} |
1403 |
}); |
1406 |
}); |
1404 |
return findArchetypes( result, repos, true); |
1407 |
return findArchetypes( result, repos, true); |
1405 |
} |
1408 |
} |
1406 |
|
1409 |
|
1407 |
private RepositoryQueries.Result<NBVersionInfo> findArchetypes(final Result<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1410 |
private ResultImplementation<NBVersionInfo> findArchetypes(final ResultImpl<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1408 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1411 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1409 |
final SkippedAction skipAction = new SkippedAction(result); |
1412 |
final SkippedAction skipAction = new SkippedAction(result); |
1410 |
iterate(repos, new RepoAction() { |
1413 |
iterate(repos, new RepoAction() { |
Lines 1423-1452
Link Here
|
1423 |
infos.add(convertToNBVersionInfo(ai)); |
1426 |
infos.add(convertToNBVersionInfo(ai)); |
1424 |
} |
1427 |
} |
1425 |
} finally { |
1428 |
} finally { |
1426 |
Accessor.ACCESSOR.addReturnedResults(result, response.getTotalProcessedArtifactInfoCount()); |
1429 |
result.addReturnedResultCount(response.getTotalProcessedArtifactInfoCount()); |
1427 |
Accessor.ACCESSOR.addTotalResults(result, response.getTotalHitsCount()); |
1430 |
result.addTotalResultCount(response.getTotalHitsCount()); |
1428 |
response.close(); |
1431 |
response.close(); |
1429 |
} |
1432 |
} |
1430 |
} |
1433 |
} |
1431 |
} |
1434 |
} |
1432 |
}, skipAction, skipUnIndexed); |
1435 |
}, skipAction, skipUnIndexed); |
1433 |
doSortIssue226100(infos); |
1436 |
doSortIssue226100(infos); |
1434 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1437 |
result.setResults(infos); |
1435 |
return result; |
1438 |
return result; |
1436 |
} |
1439 |
} |
1437 |
|
1440 |
|
1438 |
@Override |
1441 |
@Override |
1439 |
public RepositoryQueries.Result<String> filterPluginArtifactIds(final String groupId, final String prefix, List<RepositoryInfo> repos) { |
1442 |
public ResultImplementation<String> filterPluginArtifactIds(final String groupId, final String prefix, List<RepositoryInfo> repos) { |
1440 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
1443 |
ResultImpl<String> result = new ResultImpl<>(new Redo<String>() { |
1441 |
@Override |
1444 |
@Override |
1442 |
public void run(Result<String> result) { |
1445 |
public void run(ResultImpl<String> result) { |
1443 |
filterPluginArtifactIds(groupId, prefix, result, Accessor.ACCESSOR.getSkipped(result), false); |
1446 |
filterPluginArtifactIds(groupId, prefix, result, result.getSkipped(), false); |
1444 |
} |
1447 |
} |
1445 |
}); |
1448 |
}); |
1446 |
return filterPluginArtifactIds(groupId, prefix, result, repos, true); |
1449 |
return filterPluginArtifactIds(groupId, prefix, result, repos, true); |
1447 |
} |
1450 |
} |
1448 |
|
1451 |
|
1449 |
private RepositoryQueries.Result<String> filterPluginArtifactIds(final String groupId, final String prefix, Result<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1452 |
private ResultImplementation<String> filterPluginArtifactIds(final String groupId, final String prefix, ResultImpl<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1450 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1453 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1451 |
final SkippedAction skipAction = new SkippedAction(result); |
1454 |
final SkippedAction skipAction = new SkippedAction(result); |
1452 |
iterate(repos, new RepoAction() { |
1455 |
iterate(repos, new RepoAction() { |
Lines 1468-1489
Link Here
|
1468 |
} |
1471 |
} |
1469 |
} |
1472 |
} |
1470 |
}, skipAction, skipUnIndexed); |
1473 |
}, skipAction, skipUnIndexed); |
1471 |
Accessor.ACCESSOR.setStringResults(result, artifacts); |
1474 |
result.setResults(artifacts); |
1472 |
return result; |
1475 |
return result; |
1473 |
} |
1476 |
} |
1474 |
|
1477 |
|
1475 |
@Override |
1478 |
@Override |
1476 |
public RepositoryQueries.Result<String> filterPluginGroupIds(final String prefix, List<RepositoryInfo> repos) { |
1479 |
public ResultImplementation<String> filterPluginGroupIds(final String prefix, List<RepositoryInfo> repos) { |
1477 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
1480 |
ResultImpl<String> result = new ResultImpl<>(new Redo<String>() { |
1478 |
@Override |
1481 |
@Override |
1479 |
public void run(Result<String> result) { |
1482 |
public void run(ResultImpl<String> result) { |
1480 |
filterPluginGroupIds( prefix, result, Accessor.ACCESSOR.getSkipped(result), false); |
1483 |
filterPluginGroupIds( prefix, result, result.getSkipped(), false); |
1481 |
} |
1484 |
} |
1482 |
}); |
1485 |
}); |
1483 |
return filterPluginGroupIds( prefix, result, repos, true); |
1486 |
return filterPluginGroupIds( prefix, result, repos, true); |
1484 |
} |
1487 |
} |
1485 |
|
1488 |
|
1486 |
private RepositoryQueries.Result<String> filterPluginGroupIds(final String prefix, Result<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1489 |
private ResultImplementation<String> filterPluginGroupIds(final String prefix, ResultImpl<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1487 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1490 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1488 |
final SkippedAction skipAction = new SkippedAction(result); |
1491 |
final SkippedAction skipAction = new SkippedAction(result); |
1489 |
iterate(repos, new RepoAction() { |
1492 |
iterate(repos, new RepoAction() { |
Lines 1506-1526
Link Here
|
1506 |
} |
1509 |
} |
1507 |
} |
1510 |
} |
1508 |
}, skipAction, skipUnIndexed); |
1511 |
}, skipAction, skipUnIndexed); |
1509 |
Accessor.ACCESSOR.setStringResults(result, artifacts); |
1512 |
result.setResults(artifacts); |
1510 |
return result; |
1513 |
return result; |
1511 |
} |
1514 |
} |
1512 |
|
1515 |
|
1513 |
@Override |
1516 |
@Override |
1514 |
public RepositoryQueries.Result<String> filterArtifactIdForGroupId(final String groupId, final String prefix, List<RepositoryInfo> repos) { |
1517 |
public ResultImplementation<String> filterArtifactIdForGroupId(final String groupId, final String prefix, List<RepositoryInfo> repos) { |
1515 |
RepositoryQueries.Result<String> result = Accessor.ACCESSOR.createStringResult(new Redo<String>() { |
1518 |
ResultImpl<String> result = new ResultImpl<>(new Redo<String>() { |
1516 |
@Override |
1519 |
@Override |
1517 |
public void run(Result<String> result) { |
1520 |
public void run(ResultImpl<String> result) { |
1518 |
filterArtifactIdForGroupId( groupId, prefix, result, Accessor.ACCESSOR.getSkipped(result), false); |
1521 |
filterArtifactIdForGroupId( groupId, prefix, result, result.getSkipped(), false); |
1519 |
} |
1522 |
} |
1520 |
}); |
1523 |
}); |
1521 |
return filterArtifactIdForGroupId( groupId, prefix, result, repos, true); |
1524 |
return filterArtifactIdForGroupId( groupId, prefix, result, repos, true); |
1522 |
} |
1525 |
} |
1523 |
private RepositoryQueries.Result<String> filterArtifactIdForGroupId(final String groupId, final String prefix, Result<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1526 |
private ResultImplementation<String> filterArtifactIdForGroupId(final String groupId, final String prefix, ResultImpl<String> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1524 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1527 |
final Set<String> artifacts = new TreeSet<String>(result.getResults()); |
1525 |
final SkippedAction skipAction = new SkippedAction(result); |
1528 |
final SkippedAction skipAction = new SkippedAction(result); |
1526 |
iterate(repos, new RepoAction() { |
1529 |
iterate(repos, new RepoAction() { |
Lines 1541-1561
Link Here
|
1541 |
} |
1544 |
} |
1542 |
} |
1545 |
} |
1543 |
}, skipAction, skipUnIndexed); |
1546 |
}, skipAction, skipUnIndexed); |
1544 |
Accessor.ACCESSOR.setStringResults(result, artifacts); |
1547 |
result.setResults(artifacts); |
1545 |
return result; |
1548 |
return result; |
1546 |
} |
1549 |
} |
1547 |
|
1550 |
|
1548 |
@Override |
1551 |
@Override |
1549 |
public RepositoryQueries.Result<NBVersionInfo> find(final List<QueryField> fields, List<RepositoryInfo> repos) { |
1552 |
public ResultImplementation<NBVersionInfo> find(final List<QueryField> fields, List<RepositoryInfo> repos) { |
1550 |
RepositoryQueries.Result<NBVersionInfo> result = Accessor.ACCESSOR.createVersionResult(new Redo<NBVersionInfo>() { |
1553 |
ResultImpl<NBVersionInfo> result = new ResultImpl<>(new Redo<NBVersionInfo>() { |
1551 |
@Override |
1554 |
@Override |
1552 |
public void run(Result<NBVersionInfo> result) { |
1555 |
public void run(ResultImpl<NBVersionInfo> result) { |
1553 |
find( fields, result, Accessor.ACCESSOR.getSkipped(result), false); |
1556 |
find( fields, result, result.getSkipped(), false); |
1554 |
} |
1557 |
} |
1555 |
}); |
1558 |
}); |
1556 |
return find(fields, result, repos, true); |
1559 |
return find(fields, result, repos, true); |
1557 |
} |
1560 |
} |
1558 |
private RepositoryQueries.Result<NBVersionInfo> find(final List<QueryField> fields, final Result<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1561 |
private ResultImplementation<NBVersionInfo> find(final List<QueryField> fields, final ResultImpl<NBVersionInfo> result, List<RepositoryInfo> repos, final boolean skipUnIndexed) { |
1559 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1562 |
final List<NBVersionInfo> infos = new ArrayList<NBVersionInfo>(result.getResults()); |
1560 |
final SkippedAction skipAction = new SkippedAction(result); |
1563 |
final SkippedAction skipAction = new SkippedAction(result); |
1561 |
iterate(repos, new RepoAction() { |
1564 |
iterate(repos, new RepoAction() { |
Lines 1633-1647
Link Here
|
1633 |
infos.add(convertToNBVersionInfo(ai)); |
1636 |
infos.add(convertToNBVersionInfo(ai)); |
1634 |
} |
1637 |
} |
1635 |
} finally { |
1638 |
} finally { |
1636 |
Accessor.ACCESSOR.addReturnedResults(result, resp.getTotalProcessedArtifactInfoCount()); |
1639 |
result.addReturnedResultCount(resp.getTotalProcessedArtifactInfoCount()); |
1637 |
Accessor.ACCESSOR.addTotalResults(result, resp.getTotalHitsCount()); |
1640 |
result.addTotalResultCount(resp.getTotalHitsCount()); |
1638 |
resp.close(); |
1641 |
resp.close(); |
1639 |
} |
1642 |
} |
1640 |
} |
1643 |
} |
1641 |
} |
1644 |
} |
1642 |
}, skipAction, skipUnIndexed); |
1645 |
}, skipAction, skipUnIndexed); |
1643 |
doSortIssue226100(infos); |
1646 |
doSortIssue226100(infos); |
1644 |
Accessor.ACCESSOR.setVersionResults(result, infos); |
1647 |
result.setResults(infos); |
1645 |
return result; |
1648 |
return result; |
1646 |
} |
1649 |
} |
1647 |
|
1650 |
|
Lines 1778-1793
Link Here
|
1778 |
|
1781 |
|
1779 |
private static class SkippedAction implements RepoAction { |
1782 |
private static class SkippedAction implements RepoAction { |
1780 |
|
1783 |
|
1781 |
private final Result<?> result; |
1784 |
private final ResultImpl<?> result; |
1782 |
|
1785 |
|
1783 |
private SkippedAction(Result<?> result) { |
1786 |
private SkippedAction(ResultImpl<?> result) { |
1784 |
this.result = result; |
1787 |
this.result = result; |
1785 |
} |
1788 |
} |
1786 |
|
1789 |
|
1787 |
@Override |
1790 |
@Override |
1788 |
public void run(RepositoryInfo repo, IndexingContext context) throws IOException { |
1791 |
public void run(RepositoryInfo repo, IndexingContext context) throws IOException { |
1789 |
//indexing context is always null here.. |
1792 |
//indexing context is always null here.. |
1790 |
Accessor.ACCESSOR.addSkipped(result, repo); |
1793 |
result.addSkipped(repo); |
1791 |
} |
1794 |
} |
1792 |
|
1795 |
|
1793 |
} |
1796 |
} |