Skip to content

Commit a33d8f9

Browse files
author
Kishan Kavala
committed
Fixed listRegions serach by id, name
1 parent c607e03 commit a33d8f9

4 files changed

Lines changed: 18 additions & 22 deletions

File tree

api/src/org/apache/cloudstack/api/command/user/region/ListRegionsCmd.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public class ListRegionsCmd extends BaseListCmd {
3838
//////////////// API parameters /////////////////////
3939
/////////////////////////////////////////////////////
4040

41-
@Parameter(name=ApiConstants.ID, type=CommandType.LONG, description="List Region by region ID.")
41+
@Parameter(name=ApiConstants.ID, type=CommandType.INTEGER, description="List Region by region ID.")
4242
private Integer id;
4343

4444
@Parameter(name=ApiConstants.NAME, type=CommandType.STRING, description="List Region by region name.")

server/src/org/apache/cloudstack/region/RegionManagerImpl.java

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,22 @@ public boolean removeRegion(int id) {
311311
*/
312312
@Override
313313
public List<RegionVO> listRegions(Integer id, String name) {
314-
return _regionDao.listByNameAndId(id, name);
314+
List<RegionVO> regions = new ArrayList<RegionVO>();
315+
if(id != null){
316+
RegionVO region = _regionDao.findById(id);
317+
if(region != null){
318+
regions.add(region);
319+
}
320+
return regions;
321+
}
322+
if(name != null){
323+
RegionVO region = _regionDao.findByName(name);
324+
if(region != null){
325+
regions.add(region);
326+
}
327+
return regions;
328+
}
329+
return _regionDao.listAll();
315330
}
316331

317332
/**

server/src/org/apache/cloudstack/region/dao/RegionDao.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
// under the License.
1717
package org.apache.cloudstack.region.dao;
1818

19-
import java.util.List;
20-
2119
import org.apache.cloudstack.region.RegionVO;
2220

2321
import com.cloud.utils.db.GenericDao;
@@ -26,5 +24,4 @@ public interface RegionDao extends GenericDao<RegionVO, Integer> {
2624

2725
RegionVO findByName(String name);
2826

29-
List<RegionVO> listByNameAndId(Integer id, String name);
3027
}

server/src/org/apache/cloudstack/region/dao/RegionDaoImpl.java

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,11 @@
1616
// under the License.
1717
package org.apache.cloudstack.region.dao;
1818

19-
import java.util.List;
20-
2119
import javax.ejb.Local;
2220

2321
import org.apache.cloudstack.region.RegionVO;
2422
import org.apache.log4j.Logger;
2523

26-
import com.cloud.user.UserVO;
2724
import com.cloud.utils.db.GenericDaoBase;
2825
import com.cloud.utils.db.SearchBuilder;
2926
import com.cloud.utils.db.SearchCriteria;
@@ -38,25 +35,12 @@ public RegionDaoImpl(){
3835
NameSearch = createSearchBuilder();
3936
NameSearch.and("name", NameSearch.entity().getName(), SearchCriteria.Op.EQ);
4037
NameSearch.done();
41-
42-
AllFieldsSearch = createSearchBuilder();
43-
AllFieldsSearch.and("id", AllFieldsSearch.entity().getId(), SearchCriteria.Op.EQ);
44-
AllFieldsSearch.and("name", AllFieldsSearch.entity().getName(), SearchCriteria.Op.EQ);
45-
AllFieldsSearch.done();
4638
}
4739

4840
@Override
4941
public RegionVO findByName(String name) {
5042
SearchCriteria<RegionVO> sc = NameSearch.create();
51-
sc.setParameters("name", NameSearch);
52-
return findOneBy(sc);
53-
}
54-
55-
@Override
56-
public List<RegionVO> listByNameAndId(Integer id, String name) {
57-
SearchCriteria<RegionVO> sc = AllFieldsSearch.create();
58-
sc.setParameters("id", id);
5943
sc.setParameters("name", name);
60-
return listBy(sc);
44+
return findOneBy(sc);
6145
}
6246
}

0 commit comments

Comments
 (0)