@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
/ *
* Copyright 2002 - 2021 the original author or authors .
* Copyright 2002 - 2024 the original author or authors .
*
* Licensed under the Apache License , Version 2 . 0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
@ -37,6 +37,27 @@ import org.springframework.util.Assert;
@@ -37,6 +37,27 @@ import org.springframework.util.Assert;
* /
public class MapAccessor implements CompilablePropertyAccessor {
private final boolean allowWrite ;
/ * *
* Create a new map accessor for reading as well as writing .
* @since 6 . 2
* @see # MapAccessor ( boolean )
* /
public MapAccessor ( ) {
this ( true ) ;
}
/ * *
* Create a new map accessor for reading and possibly also writing .
* @param allowWrite whether to allow write operations on a target instance
* @since 6 . 2
* @see # canWrite
* /
public MapAccessor ( boolean allowWrite ) {
this . allowWrite = allowWrite ;
}
@Override
public Class < ? > [ ] getSpecificTargetClasses ( ) {
return new Class < ? > [ ] { Map . class } ;
@ -60,7 +81,7 @@ public class MapAccessor implements CompilablePropertyAccessor {
@@ -60,7 +81,7 @@ public class MapAccessor implements CompilablePropertyAccessor {
@Override
public boolean canWrite ( EvaluationContext context , @Nullable Object target , String name ) throws AccessException {
return tru e;
return this . allowWrit e;
}
@Override