Skip to content

Commit bd87ce5

Browse files
committed
Differenciate between tags
1 parent 465c513 commit bd87ce5

1 file changed

Lines changed: 22 additions & 8 deletions

File tree

server/src/main/java/com/cloud/api/query/QueryManagerImpl.java

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3067,20 +3067,34 @@ private Pair<List<ServiceOfferingJoinVO>, Integer> searchForServiceOfferingsInte
30673067
}
30683068

30693069
if (currentVmOffering != null) {
3070-
List<String> tags = StringUtils.csvTagsToList(currentVmOffering.getTags());
3071-
tags.addAll(StringUtils.csvTagsToList(currentVmOffering.getHostTag()));
3072-
if (!tags.isEmpty()) {
3070+
List<String> storageTags = StringUtils.csvTagsToList(currentVmOffering.getTags());
3071+
if (!storageTags.isEmpty()) {
30733072
SearchBuilder<ServiceOfferingJoinVO> sb = _srvOfferingJoinDao.createSearchBuilder();
3074-
for(int i = 0; i < tags.size(); i++) {
3075-
sb.and(Integer.toString(i), sb.entity().getTags(), Op.FIND_IN_SET);
3073+
for(String tag : storageTags) {
3074+
sb.and(tag, sb.entity().getTags(), Op.FIND_IN_SET);
30763075
}
30773076
sb.done();
30783077

30793078
SearchCriteria<ServiceOfferingJoinVO> scc = sb.create();
3080-
for(int i = 0; i < tags.size(); i++) {
3081-
scc.setParameters(Integer.toString(i), tags.get(i));
3079+
for(String tag : storageTags) {
3080+
scc.setParameters(tag, tag);
30823081
}
3083-
sc.addAnd("tags", SearchCriteria.Op.SC, scc);
3082+
sc.addAnd("storageTags", SearchCriteria.Op.SC, scc);
3083+
}
3084+
3085+
List<String> hostTags = StringUtils.csvTagsToList(currentVmOffering.getHostTag());
3086+
if (!hostTags.isEmpty()) {
3087+
SearchBuilder<ServiceOfferingJoinVO> sb = _srvOfferingJoinDao.createSearchBuilder();
3088+
for(String tag : hostTags) {
3089+
sb.and(tag, sb.entity().getHostTag(), Op.FIND_IN_SET);
3090+
}
3091+
sb.done();
3092+
3093+
SearchCriteria<ServiceOfferingJoinVO> scc = sb.create();
3094+
for(String tag : hostTags) {
3095+
scc.setParameters(tag, tag);
3096+
}
3097+
sc.addAnd("hostTags", SearchCriteria.Op.SC, scc);
30843098
}
30853099
}
30863100

0 commit comments

Comments
 (0)