@@ -638,6 +638,7 @@ private Pair<List<UserVmJoinVO>, Integer> searchForUserVMsInternal(ListVMsCmd cm
638638 c .addCriteria (Criteria .TEMPLATE_ID , cmd .getTemplateId ());
639639 c .addCriteria (Criteria .ISO_ID , cmd .getIsoId ());
640640 c .addCriteria (Criteria .VPC_ID , cmd .getVpcId ());
641+ c .addCriteria (Criteria .AFFINITY_GROUP_ID , cmd .getAffinityGroupId ());
641642
642643 if (domainId != null ) {
643644 c .addCriteria (Criteria .DOMAINID , domainId );
@@ -693,6 +694,7 @@ private Pair<List<UserVmJoinVO>, Integer> searchForUserVMsByCriteria(Criteria c,
693694 Object templateId = c .getCriteria (Criteria .TEMPLATE_ID );
694695 Object isoId = c .getCriteria (Criteria .ISO_ID );
695696 Object vpcId = c .getCriteria (Criteria .VPC_ID );
697+ Object affinityGroupId = c .getCriteria (Criteria .AFFINITY_GROUP_ID );
696698
697699 sb .and ("displayName" , sb .entity ().getDisplayName (), SearchCriteria .Op .LIKE );
698700 sb .and ("id" , sb .entity ().getId (), SearchCriteria .Op .EQ );
@@ -733,6 +735,10 @@ private Pair<List<UserVmJoinVO>, Integer> searchForUserVMsByCriteria(Criteria c,
733735 sb .and ("poolId" , sb .entity ().getPoolId (), SearchCriteria .Op .EQ );
734736 }
735737
738+ if (affinityGroupId != null ) {
739+ sb .and ("affinityGroupId" , sb .entity ().getAffinityGroupId (), SearchCriteria .Op .EQ );
740+ }
741+
736742 // populate the search criteria with the values passed in
737743 SearchCriteria <UserVmJoinVO > sc = sb .create ();
738744
@@ -830,6 +836,10 @@ private Pair<List<UserVmJoinVO>, Integer> searchForUserVMsByCriteria(Criteria c,
830836 sc .setParameters ("poolId" , storageId );
831837 }
832838
839+ if (affinityGroupId != null ) {
840+ sc .setParameters ("affinityGroupId" , affinityGroupId );
841+ }
842+
833843 // search vm details by ids
834844 Pair <List <UserVmJoinVO >, Integer > uniqueVmPair = _userVmJoinDao .searchAndCount (sc , searchFilter );
835845 Integer count = uniqueVmPair .second ();
@@ -1976,14 +1986,14 @@ private Pair<List<DiskOfferingJoinVO>, Integer> searchForDiskOfferingsInternal(L
19761986 domainRecord = _domainDao .findById (domainRecord .getParent ());
19771987 domainIds .add (domainRecord .getId ());
19781988 }
1979-
1989+
19801990 SearchCriteria <DiskOfferingJoinVO > spc = _diskOfferingJoinDao .createSearchCriteria ();
19811991
19821992 spc .addOr ("domainId" , SearchCriteria .Op .IN , domainIds .toArray ());
19831993 spc .addOr ("domainId" , SearchCriteria .Op .NULL ); // include public offering as where
19841994 sc .addAnd ("domainId" , SearchCriteria .Op .SC , spc );
19851995 sc .addAnd ("systemUse" , SearchCriteria .Op .EQ , false ); // non-root users should not see system offering at all
1986-
1996+
19871997 }
19881998
19891999 if (keyword != null ) {
@@ -2001,7 +2011,7 @@ private Pair<List<DiskOfferingJoinVO>, Integer> searchForDiskOfferingsInternal(L
20012011 if (name != null ) {
20022012 sc .addAnd ("name" , SearchCriteria .Op .EQ , name );
20032013 }
2004-
2014+
20052015 // FIXME: disk offerings should search back up the hierarchy for
20062016 // available disk offerings...
20072017 /*
@@ -2081,7 +2091,7 @@ private Pair<List<ServiceOfferingJoinVO>, Integer> searchForServiceOfferingsInte
20812091 // boolean includePublicOfferings = false;
20822092 if ((caller .getType () == Account .ACCOUNT_TYPE_NORMAL || caller .getType () == Account .ACCOUNT_TYPE_DOMAIN_ADMIN )
20832093 || caller .getType () == Account .ACCOUNT_TYPE_RESOURCE_DOMAIN_ADMIN ) {
2084- // For non-root users.
2094+ // For non-root users.
20852095 if (isSystem ) {
20862096 throw new InvalidParameterValueException ("Only root admins can access system's offering" );
20872097 }
0 commit comments