private void processResourceChange( final SessionInfo sessionInfo,
final Path path,
final ResourceChangeType changeType,
final Map<String, Boolean> notifiedProjects ) {
//Only process Project resources
final Project project = projectService.resolveProject( path );
if ( project == null ) {
return;
}
if ( logger.isDebugEnabled() ) {
logger.debug( "Processing resource change for sessionInfo: " + sessionInfo
+ ", project: " + project
+ ", path: " + path
+ ", changeType: " + changeType );
}
if ( !notifiedProjects.containsKey( project.getRootPath().toURI() ) && isObservableResource( path ) ) {
invalidateDMOProjectCacheEvent.fire( new InvalidateDMOProjectCacheEvent( sessionInfo,
project,
path ) );
notifiedProjects.put( project.getRootPath().toURI(),
Boolean.TRUE );
}
}