Map<String, Object> params = newHashMap();
params.put(QUERY_PARAMETER, query);
params.put(COMPONENT_ID_PARAMETER, componentId);
- return session.selectList("org.sonar.core.permission.PermissionMapper.selectUsers", params, new RowBounds(offset, limit));
+
+ return mapper(session).selectUsers(params, new RowBounds(offset, limit));
} finally {
MyBatis.closeQuietly(session);
}
params.put(QUERY_PARAMETER, query);
params.put(COMPONENT_ID_PARAMETER, componentId);
params.put("anyoneGroup", DefaultGroups.ANYONE);
- return session.selectList("org.sonar.core.permission.PermissionMapper.selectGroups", params);
+
+ return mapper(session).selectGroups(params);
} finally {
MyBatis.closeQuietly(session);
}
}
+ private PermissionMapper mapper(SqlSession session) {
+ return session.getMapper(PermissionMapper.class);
+ }
+
}
--- /dev/null
+/*
+ * SonarQube, open source software quality management tool.
+ * Copyright (C) 2008-2014 SonarSource
+ * mailto:contact AT sonarsource DOT com
+ *
+ * SonarQube is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * SonarQube is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+package org.sonar.core.permission;
+
+import org.apache.ibatis.session.RowBounds;
+
+import java.util.List;
+import java.util.Map;
+
+public interface PermissionMapper {
+
+ List<UserWithPermissionDto> selectUsers(Map<String, Object> parameters, RowBounds rowBounds);
+
+ List<GroupWithPermissionDto> selectGroups(Map<String, Object> parameters);
+}
Map<String, Object> params = newHashMap();
params.put(QUERY_PARAMETER, query);
params.put(TEMPLATE_ID_PARAMETER, templateId);
- return session.selectList("org.sonar.core.permission.PermissionTemplateMapper.selectUsers", params, new RowBounds(offset, limit));
+ return mapper(session).selectUsers(params, new RowBounds(offset, limit));
} finally {
MyBatis.closeQuietly(session);
}
params.put(QUERY_PARAMETER, query);
params.put(TEMPLATE_ID_PARAMETER, templateId);
params.put("anyoneGroup", DefaultGroups.ANYONE);
- return session.selectList("org.sonar.core.permission.PermissionTemplateMapper.selectGroups", params);
+ return mapper(session).selectGroups(params);
} finally {
MyBatis.closeQuietly(session);
}
@CheckForNull
public PermissionTemplateDto selectTemplateByKey(DbSession session, String templateKey) {
- return session.getMapper(PermissionTemplateMapper.class).selectByKey(templateKey);
+ return mapper(session).selectByKey(templateKey);
}
@CheckForNull
@CheckForNull
public PermissionTemplateDto selectPermissionTemplate(DbSession session, String templateKey) {
PermissionTemplateDto permissionTemplate = null;
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
+ PermissionTemplateMapper mapper = mapper(session);
permissionTemplate = mapper.selectByKey(templateKey);
PermissionTemplateDto templateUsersPermissions = mapper.selectTemplateUsersPermissions(templateKey);
if (templateUsersPermissions != null) {
.setUpdatedAt(creationDate);
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.insert(permissionTemplate);
+ mapper(session).insert(permissionTemplate);
session.commit();
} finally {
MyBatis.closeQuietly(session);
public void deletePermissionTemplate(Long templateId) {
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
+ PermissionTemplateMapper mapper = mapper(session);
mapper.deleteUsersPermissions(templateId);
mapper.deleteGroupsPermissions(templateId);
mapper.delete(templateId);
.setUpdatedAt(now());
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.update(permissionTemplate);
+ mapper(session).update(permissionTemplate);
session.commit();
} finally {
MyBatis.closeQuietly(session);
.setUpdatedAt(now());
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.insertUserPermission(permissionTemplateUser);
+ mapper(session).insertUserPermission(permissionTemplateUser);
session.commit();
} finally {
MyBatis.closeQuietly(session);
.setUserId(userId);
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.deleteUserPermission(permissionTemplateUser);
+ mapper(session).deleteUserPermission(permissionTemplateUser);
session.commit();
} finally {
MyBatis.closeQuietly(session);
.setUpdatedAt(now());
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.insertGroupPermission(permissionTemplateGroup);
+ mapper(session).insertGroupPermission(permissionTemplateGroup);
session.commit();
} finally {
MyBatis.closeQuietly(session);
.setGroupId(groupId);
SqlSession session = myBatis.openSession(false);
try {
- PermissionTemplateMapper mapper = session.getMapper(PermissionTemplateMapper.class);
- mapper.deleteGroupPermission(permissionTemplateGroup);
+ mapper(session).deleteGroupPermission(permissionTemplateGroup);
session.commit();
} finally {
MyBatis.closeQuietly(session);
private Date now() {
return new Date(system.now());
}
+
+ private PermissionTemplateMapper mapper(SqlSession session) {
+ return session.getMapper(PermissionTemplateMapper.class);
+ }
}
package org.sonar.core.permission;
+import org.apache.ibatis.session.RowBounds;
+
+import java.util.List;
+import java.util.Map;
+
/**
* @since 3.7
*/
void deleteGroupPermission(PermissionTemplateGroupDto permissionTemplateGroup);
void deleteByGroupId(long groupId);
+
+ List<GroupWithPermissionDto> selectGroups(Map<String, Object> params);
+
+ List<UserWithPermissionDto> selectUsers(Map<String, Object> params, RowBounds rowBounds);
}
SqlSession session = mybatis.openSession(false);
try {
Map<String, Object> params = ImmutableMap.of("query", query, "gateId", gateId.toString());
- return session.selectList("org.sonar.core.qualitygate.db.ProjectQgateAssociationMapper.selectProjects", params, new RowBounds(offset, limit));
+ return mapper(session).selectProjects(params, new RowBounds(offset, limit));
} finally {
MyBatis.closeQuietly(session);
}
return selectProjects(query, gateId, 0, Integer.MAX_VALUE);
}
+ private ProjectQgateAssociationMapper mapper(SqlSession session) {
+ return session.getMapper(ProjectQgateAssociationMapper.class);
+ }
+
}
*/
package org.sonar.core.qualitygate.db;
+import org.apache.ibatis.session.RowBounds;
+
import java.util.List;
+import java.util.Map;
public interface ProjectQgateAssociationMapper {
List<ProjectQgateAssociationDto> selectProjects(ProjectQgateAssociationQuery query);
+ List<ProjectQgateAssociationDto> selectProjects(Map<String, Object> params, RowBounds rowBounds);
}
public List<GroupMembershipDto> selectGroups(SqlSession session, GroupMembershipQuery query, Long userId, int offset, int limit) {
Map<String, Object> params = ImmutableMap.of("query", query, "userId", userId);
- return session.selectList("org.sonar.core.user.GroupMembershipMapper.selectGroups", params, new RowBounds(offset, limit));
+ return mapper(session).selectGroups(params, new RowBounds(offset, limit));
}
public int countGroups(SqlSession session, GroupMembershipQuery query, Long userId) {
Map<String, Object> params = ImmutableMap.of("query", query, "userId", userId);
- return session.selectOne("org.sonar.core.user.GroupMembershipMapper.countGroups", params);
+ return mapper(session).countGroups(params);
}
@VisibleForTesting
return selectGroups(query, userId, 0, Integer.MAX_VALUE);
}
+ private GroupMembershipMapper mapper(SqlSession session) {
+ return session.getMapper(GroupMembershipMapper.class);
+ }
+
}
*/
package org.sonar.core.user;
+import org.apache.ibatis.session.RowBounds;
+
import java.util.List;
+import java.util.Map;
public interface GroupMembershipMapper {
List<GroupMembershipDto> selectGroups(GroupMembershipQuery query);
+ List<GroupMembershipDto> selectGroups(Map<String, Object> params, RowBounds rowBounds);
+
+ int countGroups(Map<String, Object> params);
}
and p.enabled=${_true}
and p.qualifier=#{qualifier}
and p.copy_resource_id is null
+ <if test="query!=null">
and (
UPPER(p.name) like #{query}
or UPPER(p.kee) like #{query}
)
+ </if>
</sql>
<select id="selectGhostProjects" parameterType="map" resultType="Component">
s2.id is null
and p.qualifier=#{qualifier}
and p.copy_resource_id is null
+ <if test="query!=null">
and (
UPPER(p.name) like #{query}
or UPPER(p.kee) like #{query}
)
+ </if>
</sql>
</mapper>