Fix new ErrorProne errors from new EP version, and a few ancient warnings.

This commit is contained in:
Mark H. Wood
2024-09-18 11:36:45 -04:00
committed by Tim Donohue
parent 52b3100776
commit 7ca80a503b
6 changed files with 21 additions and 14 deletions

View File

@@ -521,6 +521,7 @@ public class LDAPAuthentication implements AuthenticationMethod {
} else { } else {
searchName = ldap_provider_url + ldap_search_context; searchName = ldap_provider_url + ldap_search_context;
} }
@SuppressWarnings("BanJNDI")
NamingEnumeration<SearchResult> answer = ctx.search( NamingEnumeration<SearchResult> answer = ctx.search(
searchName, searchName,
"(&({0}={1}))", new Object[] {ldap_id_field, "(&({0}={1}))", new Object[] {ldap_id_field,
@@ -571,7 +572,7 @@ public class LDAPAuthentication implements AuthenticationMethod {
att = atts.get(attlist[4]); att = atts.get(attlist[4]);
if (att != null) { if (att != null) {
// loop through all groups returned by LDAP // loop through all groups returned by LDAP
ldapGroup = new ArrayList<String>(); ldapGroup = new ArrayList<>();
for (NamingEnumeration val = att.getAll(); val.hasMoreElements(); ) { for (NamingEnumeration val = att.getAll(); val.hasMoreElements(); ) {
ldapGroup.add((String) val.next()); ldapGroup.add((String) val.next());
} }
@@ -651,7 +652,8 @@ public class LDAPAuthentication implements AuthenticationMethod {
ctx.addToEnvironment(javax.naming.Context.AUTHORITATIVE, "true"); ctx.addToEnvironment(javax.naming.Context.AUTHORITATIVE, "true");
ctx.addToEnvironment(javax.naming.Context.REFERRAL, "follow"); ctx.addToEnvironment(javax.naming.Context.REFERRAL, "follow");
// dummy operation to check if authentication has succeeded // dummy operation to check if authentication has succeeded
ctx.getAttributes(""); @SuppressWarnings("BanJNDI")
Attributes trash = ctx.getAttributes("");
} else if (!useTLS) { } else if (!useTLS) {
// Authenticate // Authenticate
env.put(javax.naming.Context.SECURITY_AUTHENTICATION, "Simple"); env.put(javax.naming.Context.SECURITY_AUTHENTICATION, "Simple");

View File

@@ -165,7 +165,7 @@ public class Curation extends DSpaceRunnable<CurationScriptConfiguration> {
* End of curation script; logs script time if -v verbose is set * End of curation script; logs script time if -v verbose is set
* *
* @param timeRun Time script was started * @param timeRun Time script was started
* @throws SQLException If DSpace contextx can't complete * @throws SQLException If DSpace context can't complete
*/ */
private void endScript(long timeRun) throws SQLException { private void endScript(long timeRun) throws SQLException {
context.complete(); context.complete();
@@ -300,9 +300,17 @@ public class Curation extends DSpaceRunnable<CurationScriptConfiguration> {
// scope // scope
if (this.commandLine.getOptionValue('s') != null) { if (this.commandLine.getOptionValue('s') != null) {
this.scope = this.commandLine.getOptionValue('s'); this.scope = this.commandLine.getOptionValue('s');
if (this.scope != null && Curator.TxScope.valueOf(this.scope.toUpperCase()) == null) { boolean knownScope;
this.handler.logError("Bad transaction scope '" + this.scope + "': only 'object', 'curation' or " + try {
"'open' recognized"); Curator.TxScope.valueOf(this.scope.toUpperCase());
knownScope = true;
} catch (IllegalArgumentException | NullPointerException e) {
knownScope = false;
}
if (!knownScope) {
this.handler.logError("Bad transaction scope '"
+ this.scope
+ "': only 'object', 'curation' or 'open' recognized");
throw new IllegalArgumentException( throw new IllegalArgumentException(
"Bad transaction scope '" + this.scope + "': only 'object', 'curation' or " + "Bad transaction scope '" + this.scope + "': only 'object', 'curation' or " +
"'open' recognized"); "'open' recognized");

View File

@@ -50,17 +50,12 @@ public abstract class DSpaceRestRepository<T extends RestAddressableModel, ID ex
extends AbstractDSpaceRestRepository extends AbstractDSpaceRestRepository
implements CrudRepository<T, ID>, PagingAndSortingRepository<T, ID>, BeanNameAware { implements CrudRepository<T, ID>, PagingAndSortingRepository<T, ID>, BeanNameAware {
private static final Logger log = org.apache.logging.log4j.LogManager.getLogger(DSpaceRestRepository.class);
private String thisRepositoryBeanName; private String thisRepositoryBeanName;
private DSpaceRestRepository<T, ID> thisRepository; private DSpaceRestRepository<T, ID> thisRepository;
@Autowired @Autowired
private ApplicationContext applicationContext; private ApplicationContext applicationContext;
@Autowired
private MetadataFieldService metadataFieldService;
/** /**
* From BeanNameAware. Allows us to capture the name of the bean, so we can load it into thisRepository. * From BeanNameAware. Allows us to capture the name of the bean, so we can load it into thisRepository.
* See getThisRepository() method. * See getThisRepository() method.

View File

@@ -81,6 +81,7 @@ public class DSpaceKernelInitializer implements ApplicationContextInitializer<Co
* Initially look for JNDI Resource called "java:/comp/env/dspace.dir". * Initially look for JNDI Resource called "java:/comp/env/dspace.dir".
* If not found, use value provided in "dspace.dir" in Spring Environment * If not found, use value provided in "dspace.dir" in Spring Environment
*/ */
@SuppressWarnings("BanJNDI")
private String getDSpaceHome(ConfigurableEnvironment environment) { private String getDSpaceHome(ConfigurableEnvironment environment) {
// Load the "dspace.dir" property from Spring Boot's Configuration (application.properties) // Load the "dspace.dir" property from Spring Boot's Configuration (application.properties)
// This gives us the location of our DSpace configurations, necessary to start the kernel // This gives us the location of our DSpace configurations, necessary to start the kernel

View File

@@ -62,6 +62,7 @@ public class EmailServiceImpl
} }
@PostConstruct @PostConstruct
@SuppressWarnings("BanJNDI")
public void init() { public void init() {
// See if there is already a Session in our environment // See if there is already a Session in our environment
String sessionName = cfg.getProperty("mail.session.name"); String sessionName = cfg.getProperty("mail.session.name");

View File

@@ -23,7 +23,7 @@ import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
* NOTE: This extends SpringBootServletInitializer in order to allow us to build * NOTE: This extends SpringBootServletInitializer in order to allow us to build
* a deployable WAR file with Spring Boot. See: * a deployable WAR file with Spring Boot. See:
* http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file * http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file
* *
* @author Luca Giamminonni (luca.giamminonni at 4science.it) * @author Luca Giamminonni (luca.giamminonni at 4science.it)
* *
*/ */
@@ -39,8 +39,8 @@ public class ServerApplication extends SpringBootServletInitializer {
* <p> * <p>
* See: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file * See: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file
* *
* @param application * @param application some builder.
* @return * @return the builder, configured with DSpace sources and initializers.
*/ */
@Override @Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {