当前位置: 首页>>代码示例>>Java>>正文


Java ClaimMapping.setMappedAttribute方法代码示例

本文整理汇总了Java中org.wso2.carbon.user.core.claim.ClaimMapping.setMappedAttribute方法的典型用法代码示例。如果您正苦于以下问题:Java ClaimMapping.setMappedAttribute方法的具体用法?Java ClaimMapping.setMappedAttribute怎么用?Java ClaimMapping.setMappedAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.wso2.carbon.user.core.claim.ClaimMapping的用法示例。


在下文中一共展示了ClaimMapping.setMappedAttribute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: convertLocalClaimToClaimMapping

import org.wso2.carbon.user.core.claim.ClaimMapping; //导入方法依赖的package包/类
public static ClaimMapping convertLocalClaimToClaimMapping(LocalClaim localClaim, int tenantId) throws
        UserStoreException {

    ClaimMapping claimMapping = new ClaimMapping();

    Claim claim = new Claim();
    claim.setClaimUri(localClaim.getClaimURI());
    claim.setDialectURI(localClaim.getClaimDialectURI());

    Map<String, String> claimProperties = localClaim.getClaimProperties();

    if (claimProperties.containsKey(ClaimConstants.DISPLAY_NAME_PROPERTY)) {
        claim.setDisplayTag(claimProperties.get(ClaimConstants.DISPLAY_NAME_PROPERTY));
    }

    if (claimProperties.containsKey(ClaimConstants.DESCRIPTION_PROPERTY)) {
        claim.setDescription(claimProperties.get(ClaimConstants.DESCRIPTION_PROPERTY));
    }

    if (claimProperties.containsKey(ClaimConstants.REGULAR_EXPRESSION_PROPERTY)) {
        claim.setRegEx(claimProperties.get(ClaimConstants.REGULAR_EXPRESSION_PROPERTY));
    }

    if (claimProperties.containsKey(ClaimConstants.DISPLAY_ORDER_PROPERTY)) {
        claim.setDisplayOrder(Integer.parseInt(claimProperties.get(ClaimConstants.DISPLAY_ORDER_PROPERTY)));
    }

    if (claimProperties.containsKey(ClaimConstants.SUPPORTED_BY_DEFAULT_PROPERTY)) {
        if ("false".equalsIgnoreCase(claimProperties.get(ClaimConstants.SUPPORTED_BY_DEFAULT_PROPERTY))) {
            claim.setSupportedByDefault(Boolean.FALSE);

        } else {
            claim.setSupportedByDefault(Boolean.TRUE);
        }
    }

    if (claimProperties.containsKey(ClaimConstants.REQUIRED_PROPERTY)) {
        if ("false".equalsIgnoreCase(claimProperties.get(ClaimConstants.REQUIRED_PROPERTY))) {
            claim.setRequired(Boolean.FALSE);

        } else {
            claim.setRequired(Boolean.TRUE);
        }
    }

    if (claimProperties.containsKey(ClaimConstants.READ_ONLY_PROPERTY)) {
        if ("false".equalsIgnoreCase(claimProperties.get(ClaimConstants.READ_ONLY_PROPERTY))) {
            claim.setReadOnly(Boolean.FALSE);

        } else {
            claim.setReadOnly(Boolean.TRUE);
        }
    }

    claimMapping.setClaim(claim);

    List<AttributeMapping> mappedAttributes = localClaim.getMappedAttributes();
    for (AttributeMapping attributeMapping : mappedAttributes) {
        claimMapping.setMappedAttribute(attributeMapping.getUserStoreDomain(), attributeMapping.getAttributeName());
    }

    if (claimProperties.containsKey(ClaimConstants.DEFAULT_ATTRIBUTE)) {
        claimMapping.setMappedAttribute(claimProperties.get(ClaimConstants.DEFAULT_ATTRIBUTE));
    } else {
        RealmService realmService = IdentityClaimManagementServiceDataHolder.getInstance().getRealmService();

        if (realmService != null && realmService.getTenantUserRealm(tenantId) != null) {

            UserRealm realm = realmService.getTenantUserRealm(tenantId);
            String primaryDomainName = realm.getRealmConfiguration().getUserStoreProperty
                    (UserCoreConstants.RealmConfig.PROPERTY_DOMAIN_NAME);
            claimMapping.setMappedAttribute(localClaim.getMappedAttribute(primaryDomainName));
        } else {
            claimMapping.setMappedAttribute(localClaim.getMappedAttribute(UserCoreConstants.
                    PRIMARY_DEFAULT_DOMAIN_NAME));
        }
    }

    return claimMapping;
}
 
开发者ID:wso2,项目名称:carbon-identity-framework,代码行数:81,代码来源:ClaimMetadataUtils.java


注:本文中的org.wso2.carbon.user.core.claim.ClaimMapping.setMappedAttribute方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。