public static String getThreadLocalForProject(final String nodeNameLocalRefId, final Project project) {
        final Object o = project.getReference(nodeNameLocalRefId);
        String thrNode = null;
        if (null != o && o instanceof InheritableThreadLocal) {
            InheritableThreadLocal<String> local = (InheritableThreadLocal<String>) o;
            thrNode = local.get();
        }
        return thrNode;
    }
public static String getThreadLocalForProject ( final String nodeNameLocalRefId , final Project project ) { final Object o = project . getReference ( nodeNameLocalRefId ) ; String thrNode = null ; if ( null != o && o instanceof InheritableThreadLocal ) { InheritableThreadLocal < String > local = ( InheritableThreadLocal < String > ) o ; thrNode = local . get ( ) ; } return thrNode ; }
Extract the threadlocal stored as a reference in the project, and return the string value or null.

@param nodeNameLocalRefId refid for the thread local variable
@param project            Project

@return value of the variable, or null if it is not found or the refid doesn't refer to a valid thread local