Author: michiel
Date: 2009-05-18 14:02:58 +0200 (Mon, 18 May 2009)
New Revision: 35249
Modified:
mmbase/trunk/applications/cloudcontext/src/org/mmbase/security/implementation/cloudcontext/Caches.java
Log:
If for some reason security implementation different, then don't fail complete
event-handler
Modified:
mmbase/trunk/applications/cloudcontext/src/org/mmbase/security/implementation/cloudcontext/Caches.java
===================================================================
---
mmbase/trunk/applications/cloudcontext/src/org/mmbase/security/implementation/cloudcontext/Caches.java
2009-05-18 11:55:17 UTC (rev 35248)
+++
mmbase/trunk/applications/cloudcontext/src/org/mmbase/security/implementation/cloudcontext/Caches.java
2009-05-18 12:02:58 UTC (rev 35249)
@@ -125,38 +125,46 @@
static void notify(NodeEvent event) {
- String builder = event.getBuilderName();
- if
(builder.equals(Authenticate.getInstance().getUserProvider().getUserBuilder().getTableName()))
{
- invalidateCaches(event.getNodeNumber());
+ try {
+ String builder = event.getBuilderName();
+ if
(builder.equals(Authenticate.getInstance().getUserProvider().getUserBuilder().getTableName()))
{
+ invalidateCaches(event.getNodeNumber());
+ }
+ if (new
BuilderNames(Verify.getInstance().getContextProvider().getContextQueries()).contains((builder))
+ || builder.equals("rightsrel")
+ || builder.equals("groups")
+ || builder.equals("ranks")
+ ) {
+ invalidateCaches();
+ }
+ } catch (ClassCastException cce) {
+ log.debug(cce + " (Different security implementations?)");
}
- if (new
BuilderNames(Verify.getInstance().getContextProvider().getContextQueries()).contains((builder))
- || builder.equals("rightsrel")
- || builder.equals("groups")
- || builder.equals("ranks")
- ) {
- invalidateCaches();
- }
}
static void notify(RelationEvent event) {
- String sourceType = event.getRelationSourceType();
- String destType = event.getRelationDestinationType();
- String userBuilder =
Authenticate.getInstance().getUserProvider().getUserBuilder().getTableName();
- Collection<String> contextBuilders = new
BuilderNames(Verify.getInstance().getContextProvider().getContextQueries());
- if (sourceType.equals(userBuilder)) {
- invalidateCaches(event.getRelationSourceNumber());
+ try {
+ String sourceType = event.getRelationSourceType();
+ String destType = event.getRelationDestinationType();
+ String userBuilder =
Authenticate.getInstance().getUserProvider().getUserBuilder().getTableName();
+ Collection<String> contextBuilders = new
BuilderNames(Verify.getInstance().getContextProvider().getContextQueries());
+ if (sourceType.equals(userBuilder)) {
+ invalidateCaches(event.getRelationSourceNumber());
+ }
+ if (destType.equals(userBuilder)) {
+ invalidateCaches(event.getRelationDestinationNumber());
+ }
+ if (contextBuilders.contains(sourceType) ||
contextBuilders.contains(destType)) {
+ invalidateCaches();
+ }
+ if (sourceType.equals("groups") || destType.equals("groups")) {
+ invalidateCaches();
+ }
+ if (sourceType.equals("ranks") || destType.equals("ranks")) {
+ invalidateCaches();
+ }
+ } catch (ClassCastException cce) {
+ log.debug(cce + " (Different security implementations?)");
}
- if (destType.equals(userBuilder)) {
- invalidateCaches(event.getRelationDestinationNumber());
- }
- if (contextBuilders.contains(sourceType) ||
contextBuilders.contains(destType)) {
- invalidateCaches();
- }
- if (sourceType.equals("groups") || destType.equals("groups")) {
- invalidateCaches();
- }
- if (sourceType.equals("ranks") || destType.equals("ranks")) {
- invalidateCaches();
- }
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs