Fix AppServer build errors in Eclipse with <4.6 target platforms

9aa3748 added dummy implementations for loadRoleInfo() and
loadUserInfo() to class MappedLoginService to fix compile errors in
Eclipse when using 4.6 target platform which brings Jetty 9.3 adding
these two methods. Unfortunately this causes errors when using non 4.6
target platform coming with an older Jetty version. Fix this by
extracting the anonymous subclass of MappedLoginService which allows to
suppress the unused private method errors in Eclipse.

Change-Id: I75baeea7ff4502ce9ef2b541b3c0555da5535d79
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
Matthias Sohn 2016-07-14 22:59:14 +02:00
parent ffddf8d437
commit 9a4e8de467
1 changed files with 29 additions and 20 deletions

View File

@ -168,29 +168,38 @@ public ServletContextHandler authBasic(ServletContextHandler ctx) {
return ctx;
}
static class TestMappedLoginService extends MappedLoginService {
private String role;
TestMappedLoginService(String role) {
this.role = role;
}
@Override
protected UserIdentity loadUser(String who) {
return null;
}
@Override
protected void loadUsers() throws IOException {
putUser(username, new Password(password), new String[] { role });
}
protected String[] loadRoleInfo(
@SuppressWarnings("unused") KnownUser user) {
return null;
}
protected KnownUser loadUserInfo(
@SuppressWarnings("unused") String usrname) {
return null;
}
}
private void auth(ServletContextHandler ctx, Authenticator authType) {
final String role = "can-access";
MappedLoginService users = new MappedLoginService() {
@Override
protected UserIdentity loadUser(String who) {
return null;
}
@Override
protected void loadUsers() throws IOException {
putUser(username, new Password(password), new String[] { role });
}
protected String[] loadRoleInfo(KnownUser user) {
return null;
}
protected KnownUser loadUserInfo(String usrname) {
return null;
}
};
MappedLoginService users = new TestMappedLoginService(role);
ConstraintMapping cm = new ConstraintMapping();
cm.setConstraint(new Constraint());
cm.getConstraint().setAuthenticate(true);