Polishing Javadoc and in security sample

This commit is contained in:
Rossen Stoyanchev
2021-07-05 14:31:58 +01:00
parent cc61c4baad
commit 16656d623f
8 changed files with 36 additions and 35 deletions

View File

@@ -2,8 +2,6 @@ package io.spring.sample.graphql;
import java.math.BigDecimal;
import reactor.core.publisher.Mono;
import org.springframework.security.access.annotation.Secured;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;

View File

@@ -1,8 +1,12 @@
package io.spring.sample.graphql;
import java.util.Collections;
import java.util.List;
import graphql.GraphQLError;
import graphql.GraphqlErrorBuilder;
import graphql.schema.DataFetchingEnvironment;
import org.springframework.graphql.execution.ErrorType;
import org.springframework.graphql.execution.SyncDataFetcherExceptionResolver;
import org.springframework.security.access.AccessDeniedException;
@@ -15,9 +19,6 @@ import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Component;
import org.springframework.util.Assert;
import java.util.Arrays;
import java.util.List;
@Component
public class SecurityDataFetcherExceptionResolver implements SyncDataFetcherExceptionResolver {
@@ -45,7 +46,7 @@ public class SecurityDataFetcherExceptionResolver implements SyncDataFetcherExce
}
private List<GraphQLError> unauthorized(DataFetchingEnvironment environment) {
return Arrays.asList(
return Collections.singletonList(
GraphqlErrorBuilder.newError(environment)
.errorType(ErrorType.UNAUTHORIZED)
.message("Unauthorized")
@@ -53,7 +54,7 @@ public class SecurityDataFetcherExceptionResolver implements SyncDataFetcherExce
}
private List<GraphQLError> forbidden(DataFetchingEnvironment environment) {
return Arrays.asList(
return Collections.singletonList(
GraphqlErrorBuilder.newError(environment)
.errorType(ErrorType.FORBIDDEN)
.message("Forbidden")

View File

@@ -15,7 +15,6 @@
*/
package io.spring.sample.graphql.greeting;
import java.util.Collections;
import java.util.Map;
import org.springframework.graphql.execution.ThreadLocalAccessor;
@@ -30,29 +29,23 @@ import org.springframework.web.context.request.RequestContextHolder;
@Component
public class RequestAttributesAccessor implements ThreadLocalAccessor {
private static final String ATTRIBUTES_KEY = RequestAttributesAccessor.class.getName() + ".requestAttributes";
private static final String KEY = RequestAttributesAccessor.class.getName();
@Override
public void extractValues(Map<String, Object> container) {
RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
if (attributes != null) {
container.put(ATTRIBUTES_KEY, attributes);
}
container.put(KEY, RequestContextHolder.getRequestAttributes());
}
@Override
public void restoreValues(Map<String, Object> values) {
RequestAttributes attributes = (RequestAttributes) values.get(ATTRIBUTES_KEY);
if (attributes != null) {
RequestContextHolder.setRequestAttributes(attributes);
if (values.containsKey(KEY)) {
RequestContextHolder.setRequestAttributes((RequestAttributes) values.get(KEY));
}
}
@Override
public void resetValues(Map<String, Object> values) {
if (values.get(ATTRIBUTES_KEY) != null) {
RequestContextHolder.resetRequestAttributes();
}
RequestContextHolder.resetRequestAttributes();
}
}