test_class.file: services/src/test/java/org/keycloak/protocol/oidc/mappers/OIDCAttributeMapperHelperTest.java
test_class.identifier: OIDCAttributeMapperHelperTest
test_case.body: @Test
      public void testSplitClaimPath() {
          assertThat(OIDCAttributeMapperHelper.splitClaimPath(""),          Matchers.empty());
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("a"),         Matchers.contains("a"));
  
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("a.b"),       Matchers.contains("a", "b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("a\\.b"),     Matchers.contains("a.b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("a\\\\.b"),   Matchers.contains("a\\", "b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("a\\\\\\.b"), Matchers.contains("a\\.b"));
  
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("c.a\\\\.b"),   Matchers.contains("c", "a\\", "b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("c.a\\\\\\.b"), Matchers.contains("c", "a\\.b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("c\\\\\\.b.a\\\\\\.b"), Matchers.contains("c\\.b", "a\\.b"));
          assertThat(OIDCAttributeMapperHelper.splitClaimPath("c\\h\\.b.a\\\\\\.b"), Matchers.contains("ch.b", "a\\.b"));
      }
test_case.class_method_signature: OIDCAttributeMapperHelperTest.testSplitClaimPath()
test_case.full_signature: @Test public void testSplitClaimPath()
test_case.identifier: testSplitClaimPath
test_case.invocations: assertThat splitClaimPath empty assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains assertThat splitClaimPath contains
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testSplitClaimPath()
focal_class.declarator: TOKEN_CLAIM_NAME = "claim.name"
focal_class.modifier: public static final
focal_class.original_string: public static final String TOKEN_CLAIM_NAME = "claim.name";
focal_class.type: String
focal_class.var_name: TOKEN_CLAIM_NAME
focal_class.declarator: TOKEN_CLAIM_NAME_LABEL = "tokenClaimName.label"
focal_class.modifier: public static final
focal_class.original_string: public static final String TOKEN_CLAIM_NAME_LABEL = "tokenClaimName.label";
focal_class.type: String
focal_class.var_name: TOKEN_CLAIM_NAME_LABEL
focal_class.declarator: TOKEN_CLAIM_NAME_TOOLTIP = "tokenClaimName.tooltip"
focal_class.modifier: public static final
focal_class.original_string: public static final String TOKEN_CLAIM_NAME_TOOLTIP = "tokenClaimName.tooltip";
focal_class.type: String
focal_class.var_name: TOKEN_CLAIM_NAME_TOOLTIP
focal_class.declarator: JSON_TYPE = "jsonType.label"
focal_class.modifier: public static final
focal_class.original_string: public static final String JSON_TYPE = "jsonType.label";
focal_class.type: String
focal_class.var_name: JSON_TYPE
focal_class.declarator: JSON_TYPE_TOOLTIP = "jsonType.tooltip"
focal_class.modifier: public static final
focal_class.original_string: public static final String JSON_TYPE_TOOLTIP = "jsonType.tooltip";
focal_class.type: String
focal_class.var_name: JSON_TYPE_TOOLTIP
focal_class.declarator: INCLUDE_IN_ACCESS_TOKEN = "access.token.claim"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ACCESS_TOKEN = "access.token.claim";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ACCESS_TOKEN
focal_class.declarator: INCLUDE_IN_ACCESS_TOKEN_LABEL = "includeInAccessToken.label"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ACCESS_TOKEN_LABEL = "includeInAccessToken.label";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ACCESS_TOKEN_LABEL
focal_class.declarator: INCLUDE_IN_ACCESS_TOKEN_HELP_TEXT = "includeInAccessToken.tooltip"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ACCESS_TOKEN_HELP_TEXT = "includeInAccessToken.tooltip";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ACCESS_TOKEN_HELP_TEXT
focal_class.declarator: INCLUDE_IN_ID_TOKEN = "id.token.claim"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ID_TOKEN = "id.token.claim";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ID_TOKEN
focal_class.declarator: INCLUDE_IN_ID_TOKEN_LABEL = "includeInIdToken.label"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ID_TOKEN_LABEL = "includeInIdToken.label";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ID_TOKEN_LABEL
focal_class.declarator: INCLUDE_IN_ID_TOKEN_HELP_TEXT = "includeInIdToken.tooltip"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_ID_TOKEN_HELP_TEXT = "includeInIdToken.tooltip";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_ID_TOKEN_HELP_TEXT
focal_class.declarator: INCLUDE_IN_USERINFO = "userinfo.token.claim"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_USERINFO = "userinfo.token.claim";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_USERINFO
focal_class.declarator: INCLUDE_IN_USERINFO_LABEL = "includeInUserInfo.label"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_USERINFO_LABEL = "includeInUserInfo.label";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_USERINFO_LABEL
focal_class.declarator: INCLUDE_IN_USERINFO_HELP_TEXT = "includeInUserInfo.tooltip"
focal_class.modifier: public static final
focal_class.original_string: public static final String INCLUDE_IN_USERINFO_HELP_TEXT = "includeInUserInfo.tooltip";
focal_class.type: String
focal_class.var_name: INCLUDE_IN_USERINFO_HELP_TEXT
focal_class.declarator: CLAIM_COMPONENT = Pattern.compile("^((\\\\.|[^\\\\.])+?)\\.")
focal_class.modifier: private static final
focal_class.original_string: private static final Pattern CLAIM_COMPONENT = Pattern.compile("^((\\\\.|[^\\\\.])+?)\\.");
focal_class.type: Pattern
focal_class.var_name: CLAIM_COMPONENT
focal_class.declarator: BACKSLASHED_CHARACTER = Pattern.compile("\\\\(.)")
focal_class.modifier: private static final
focal_class.original_string: private static final Pattern BACKSLASHED_CHARACTER = Pattern.compile("\\\\(.)");
focal_class.type: Pattern
focal_class.var_name: BACKSLASHED_CHARACTER
focal_class.file: services/src/main/java/org/keycloak/protocol/oidc/mappers/OIDCAttributeMapperHelper.java
focal_class.identifier: OIDCAttributeMapperHelper
focal_class.class_method_signature: OIDCAttributeMapperHelper.mapAttributeValue(ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.full_signature: public static Object mapAttributeValue(ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.identifier: mapAttributeValue
focal_class.modifiers: public static
focal_class.parameters: (ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.return: Object
focal_class.signature: Object mapAttributeValue(ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.transform(List<X> attributeValue, Function<X, T> mapper)
focal_class.full_signature: private static List<T> transform(List<X> attributeValue, Function<X, T> mapper)
focal_class.identifier: transform
focal_class.modifiers: private static
focal_class.parameters: (List<X> attributeValue, Function<X, T> mapper)
focal_class.return: List<T>
focal_class.signature: List<T> transform(List<X> attributeValue, Function<X, T> mapper)
focal_class.class_method_signature: OIDCAttributeMapperHelper.convertToType(String type, Object attributeValue)
focal_class.full_signature: private static Object convertToType(String type, Object attributeValue)
focal_class.identifier: convertToType
focal_class.modifiers: private static
focal_class.parameters: (String type, Object attributeValue)
focal_class.return: Object
focal_class.signature: Object convertToType(String type, Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.getString(Object attributeValue)
focal_class.full_signature: private static String getString(Object attributeValue)
focal_class.identifier: getString
focal_class.modifiers: private static
focal_class.parameters: (Object attributeValue)
focal_class.return: String
focal_class.signature: String getString(Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.getLong(Object attributeValue)
focal_class.full_signature: private static Long getLong(Object attributeValue)
focal_class.identifier: getLong
focal_class.modifiers: private static
focal_class.parameters: (Object attributeValue)
focal_class.return: Long
focal_class.signature: Long getLong(Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.getInteger(Object attributeValue)
focal_class.full_signature: private static Integer getInteger(Object attributeValue)
focal_class.identifier: getInteger
focal_class.modifiers: private static
focal_class.parameters: (Object attributeValue)
focal_class.return: Integer
focal_class.signature: Integer getInteger(Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.getBoolean(Object attributeValue)
focal_class.full_signature: private static Boolean getBoolean(Object attributeValue)
focal_class.identifier: getBoolean
focal_class.modifiers: private static
focal_class.parameters: (Object attributeValue)
focal_class.return: Boolean
focal_class.signature: Boolean getBoolean(Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.getJsonNode(Object attributeValue)
focal_class.full_signature: private static JsonNode getJsonNode(Object attributeValue)
focal_class.identifier: getJsonNode
focal_class.modifiers: private static
focal_class.parameters: (Object attributeValue)
focal_class.return: JsonNode
focal_class.signature: JsonNode getJsonNode(Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.splitClaimPath(String claimPath)
focal_class.full_signature: public static List<String> splitClaimPath(String claimPath)
focal_class.identifier: splitClaimPath
focal_class.modifiers: public static
focal_class.parameters: (String claimPath)
focal_class.return: List<String>
focal_class.signature: List<String> splitClaimPath(String claimPath)
focal_class.class_method_signature: OIDCAttributeMapperHelper.mapClaim(IDToken token, ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.full_signature: public static void mapClaim(IDToken token, ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.identifier: mapClaim
focal_class.modifiers: public static
focal_class.parameters: (IDToken token, ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.return: void
focal_class.signature: void mapClaim(IDToken token, ProtocolMapperModel mappingModel, Object attributeValue)
focal_class.class_method_signature: OIDCAttributeMapperHelper.createClaimMapper(String name,
                                                          String userAttribute,
                                                          String tokenClaimName, String claimType,
                                                          boolean accessToken, boolean idToken,
                                                          String mapperId)
focal_class.full_signature: public static ProtocolMapperModel createClaimMapper(String name,
                                                          String userAttribute,
                                                          String tokenClaimName, String claimType,
                                                          boolean accessToken, boolean idToken,
                                                          String mapperId)
focal_class.identifier: createClaimMapper
focal_class.modifiers: public static
focal_class.parameters: (String name,
                                                          String userAttribute,
                                                          String tokenClaimName, String claimType,
                                                          boolean accessToken, boolean idToken,
                                                          String mapperId)
focal_class.return: ProtocolMapperModel
focal_class.signature: ProtocolMapperModel createClaimMapper(String name,
                                                          String userAttribute,
                                                          String tokenClaimName, String claimType,
                                                          boolean accessToken, boolean idToken,
                                                          String mapperId)
focal_class.class_method_signature: OIDCAttributeMapperHelper.createClaimMapper(String name,
                                    String userAttribute,
                                    String tokenClaimName, String claimType,
                                    boolean accessToken, boolean idToken, boolean userinfo,
                                    String mapperId)
focal_class.full_signature: public static ProtocolMapperModel createClaimMapper(String name,
                                    String userAttribute,
                                    String tokenClaimName, String claimType,
                                    boolean accessToken, boolean idToken, boolean userinfo,
                                    String mapperId)
focal_class.identifier: createClaimMapper
focal_class.modifiers: public static
focal_class.parameters: (String name,
                                    String userAttribute,
                                    String tokenClaimName, String claimType,
                                    boolean accessToken, boolean idToken, boolean userinfo,
                                    String mapperId)
focal_class.return: ProtocolMapperModel
focal_class.signature: ProtocolMapperModel createClaimMapper(String name,
                                    String userAttribute,
                                    String tokenClaimName, String claimType,
                                    boolean accessToken, boolean idToken, boolean userinfo,
                                    String mapperId)
focal_class.class_method_signature: OIDCAttributeMapperHelper.includeInIDToken(ProtocolMapperModel mappingModel)
focal_class.full_signature: public static boolean includeInIDToken(ProtocolMapperModel mappingModel)
focal_class.identifier: includeInIDToken
focal_class.modifiers: public static
focal_class.parameters: (ProtocolMapperModel mappingModel)
focal_class.return: boolean
focal_class.signature: boolean includeInIDToken(ProtocolMapperModel mappingModel)
focal_class.class_method_signature: OIDCAttributeMapperHelper.includeInAccessToken(ProtocolMapperModel mappingModel)
focal_class.full_signature: public static boolean includeInAccessToken(ProtocolMapperModel mappingModel)
focal_class.identifier: includeInAccessToken
focal_class.modifiers: public static
focal_class.parameters: (ProtocolMapperModel mappingModel)
focal_class.return: boolean
focal_class.signature: boolean includeInAccessToken(ProtocolMapperModel mappingModel)
focal_class.class_method_signature: OIDCAttributeMapperHelper.isMultivalued(ProtocolMapperModel mappingModel)
focal_class.full_signature: public static boolean isMultivalued(ProtocolMapperModel mappingModel)
focal_class.identifier: isMultivalued
focal_class.modifiers: public static
focal_class.parameters: (ProtocolMapperModel mappingModel)
focal_class.return: boolean
focal_class.signature: boolean isMultivalued(ProtocolMapperModel mappingModel)
focal_class.class_method_signature: OIDCAttributeMapperHelper.includeInUserInfo(ProtocolMapperModel mappingModel)
focal_class.full_signature: public static boolean includeInUserInfo(ProtocolMapperModel mappingModel)
focal_class.identifier: includeInUserInfo
focal_class.modifiers: public static
focal_class.parameters: (ProtocolMapperModel mappingModel)
focal_class.return: boolean
focal_class.signature: boolean includeInUserInfo(ProtocolMapperModel mappingModel)
focal_class.class_method_signature: OIDCAttributeMapperHelper.addAttributeConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.full_signature: public static void addAttributeConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.identifier: addAttributeConfig
focal_class.modifiers: public static
focal_class.parameters: (List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.return: void
focal_class.signature: void addAttributeConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.class_method_signature: OIDCAttributeMapperHelper.addTokenClaimNameConfig(List<ProviderConfigProperty> configProperties)
focal_class.full_signature: public static void addTokenClaimNameConfig(List<ProviderConfigProperty> configProperties)
focal_class.identifier: addTokenClaimNameConfig
focal_class.modifiers: public static
focal_class.parameters: (List<ProviderConfigProperty> configProperties)
focal_class.return: void
focal_class.signature: void addTokenClaimNameConfig(List<ProviderConfigProperty> configProperties)
focal_class.class_method_signature: OIDCAttributeMapperHelper.addJsonTypeConfig(List<ProviderConfigProperty> configProperties)
focal_class.full_signature: public static void addJsonTypeConfig(List<ProviderConfigProperty> configProperties)
focal_class.identifier: addJsonTypeConfig
focal_class.modifiers: public static
focal_class.parameters: (List<ProviderConfigProperty> configProperties)
focal_class.return: void
focal_class.signature: void addJsonTypeConfig(List<ProviderConfigProperty> configProperties)
focal_class.class_method_signature: OIDCAttributeMapperHelper.addIncludeInTokensConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.full_signature: public static void addIncludeInTokensConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.identifier: addIncludeInTokensConfig
focal_class.modifiers: public static
focal_class.parameters: (List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_class.return: void
focal_class.signature: void addIncludeInTokensConfig(List<ProviderConfigProperty> configProperties, Class<? extends ProtocolMapper> protocolMapperClass)
focal_method.body: public static List<String> splitClaimPath(String claimPath) {
          final LinkedList<String> claimComponents = new LinkedList<>();
          Matcher m = CLAIM_COMPONENT.matcher(claimPath);
          int start = 0;
          while (m.find()) {
              claimComponents.add(BACKSLASHED_CHARACTER.matcher(m.group(1)).replaceAll("$1"));
              start = m.end();
              // This is necessary to match the start of region as the start of string as determined by ^
              m.region(start, claimPath.length());
          }
          if (claimPath.length() > start) {
              claimComponents.add(BACKSLASHED_CHARACTER.matcher(claimPath.substring(start)).replaceAll("$1"));
          }
          return claimComponents;
      }
focal_method.class_method_signature: OIDCAttributeMapperHelper.splitClaimPath(String claimPath)
focal_method.full_signature: public static List<String> splitClaimPath(String claimPath)
focal_method.identifier: splitClaimPath
focal_method.invocations: matcher find add replaceAll matcher group end region length length add replaceAll matcher substring
focal_method.modifiers: public static
focal_method.parameters: (String claimPath)
focal_method.return: List<String>
focal_method.signature: List<String> splitClaimPath(String claimPath)