本文整理汇总了Java中org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute类的典型用法代码示例。如果您正苦于以下问题:Java DocumentSecurityAttribute类的具体用法?Java DocumentSecurityAttribute怎么用?Java DocumentSecurityAttribute使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DocumentSecurityAttribute类属于org.kuali.rice.kew.framework.document.security包,在下文中一共展示了DocumentSecurityAttribute类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getAuthorizedDocumentIds
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
@Override
public List<String> getAuthorizedDocumentIds(String principalId, List<DocumentSecurityDirective> documentSecurityDirectives ) {
if (StringUtils.isBlank(principalId)) {
throw new RiceIllegalArgumentException("principalId was null or blank");
}
if (documentSecurityDirectives == null) {
documentSecurityDirectives = Collections.emptyList();
}
List<String> authorizedDocumentIds = new ArrayList<String>();
Map<String, DocumentSecurityAttribute> securityAttributeCache = new HashMap<String, DocumentSecurityAttribute>();
for (DocumentSecurityDirective documentSecurityDirective : documentSecurityDirectives) {
List<DocumentSecurityAttribute> attributesToApply = loadSecurityAttributes(documentSecurityDirective, securityAttributeCache);
for (Document document : documentSecurityDirective.getDocuments()) {
// if it's already authorized, we don't need to do anything
if (!authorizedDocumentIds.contains(document.getDocumentId())) {
for (DocumentSecurityAttribute securityAttribute : attributesToApply) {
if (securityAttribute.isAuthorizedForDocument(principalId, document)) {
authorizedDocumentIds.add(document.getDocumentId());
break;
}
}
}
}
}
return authorizedDocumentIds;
}
示例2: getImmediateSecurityAttributes
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
protected List<DocumentSecurityAttribute> getImmediateSecurityAttributes(Document document, DocumentTypeSecurity security,
SecuritySession securitySession) {
List<DocumentSecurityAttribute> securityAttributes = new ArrayList<DocumentSecurityAttribute>();
for (String securityAttributeClassName : security.getSecurityAttributeClassNames()) {
DocumentSecurityAttribute securityAttribute = securitySession.getSecurityAttributeForClass(
securityAttributeClassName);
if (securityAttribute == null) {
securityAttribute = GlobalResourceLoader.getObject(new ObjectDefinition(securityAttributeClassName));
securitySession.setSecurityAttributeForClass(securityAttributeClassName, securityAttribute);
}
securityAttributes.add(securityAttribute);
}
return securityAttributes;
}
示例3: loadSecurityAttributes
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
protected List<DocumentSecurityAttribute> loadSecurityAttributes(DocumentSecurityDirective documentSecurityDirective,
Map<String, DocumentSecurityAttribute> securityAttributeCache) {
List<DocumentSecurityAttribute> securityAttributes = new ArrayList<DocumentSecurityAttribute>();
for (String documentSecurityAttributeName : documentSecurityDirective.getDocumentSecurityAttributeNames()) {
securityAttributes.add(loadAndCacheSecurityAttribute(documentSecurityAttributeName, securityAttributeCache));
}
return securityAttributes;
}
示例4: loadAndCacheSecurityAttribute
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
protected DocumentSecurityAttribute loadAndCacheSecurityAttribute(String securityAttributeName, Map<String, DocumentSecurityAttribute> securityAttributeCache) {
if (securityAttributeCache.containsKey(securityAttributeName)) {
return securityAttributeCache.get(securityAttributeName);
}
ExtensionDefinition extensionDefinition = extensionRepositoryService.getExtensionByName(securityAttributeName);
if (extensionDefinition == null) {
throw new RiceIllegalArgumentException("Failed to locate a SecurityAttribute with the given name: " + securityAttributeName);
}
DocumentSecurityAttribute securityAttribute = loadSecurityAttribute(extensionDefinition);
securityAttributeCache.put(securityAttributeName, securityAttribute);
return securityAttribute;
}
示例5: loadSecurityAttribute
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
protected DocumentSecurityAttribute loadSecurityAttribute(ExtensionDefinition extensionDefinition) {
Object securityAttribute = ExtensionUtils.loadExtension(extensionDefinition);
if (securityAttribute == null) {
throw new RiceIllegalArgumentException("Failed to load SecurityAttribute for: " + extensionDefinition);
}
return (DocumentSecurityAttribute)securityAttribute;
}
示例6: getSecurityAttributeForClass
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
public DocumentSecurityAttribute getSecurityAttributeForClass(String className) {
return this.securityAttributeClassNameMap.get(className);
}
示例7: setSecurityAttributeForClass
import org.kuali.rice.kew.framework.document.security.DocumentSecurityAttribute; //导入依赖的package包/类
public void setSecurityAttributeForClass(String className, DocumentSecurityAttribute securityAttribute) {
this.securityAttributeClassNameMap.put(className, securityAttribute);
}