code: public FwCoreDirection assistCoreDirection() {
          if (coreDirection != null) {
              return coreDirection;
          }
          synchronized (this) {
              if (coreDirection != null) {
                  return coreDirection;
              }
              final FwCoreDirection direction = createCoreDirection();
              prepareCoreDirection(direction);
              coreDirection = direction;
          }
          return coreDirection;
      }
docs: ====