public IURLProtocolHandler getHandler(String protocol, String url, int flags)
  {
    // Note: We need to remove any protocol markers from the url
    String streamName = URLProtocolManager.getResourceFromURL(url);

    RegistrationInformation tuple = mURLs.get(streamName);
    if (tuple != null)
    {
      IURLProtocolHandler handler = tuple.getHandler();
      if (tuple.isUnmappingOnOpen())
      {
        IURLProtocolHandler oldHandler = unmapIO(tuple.getName());

        // the unmapIO is an atomic operation
        if (handler != null && !handler.equals(oldHandler))
        {
          // someone already unmapped this stream
          log.error("stream {} already unmapped; it was likely already opened",

          tuple.getName());
          return null;
        }
      }
      return handler;
    }
    return null;
  }
public IURLProtocolHandler getHandler(String protocol, String url, int flags)
  {
    
    String streamName = URLProtocolManager.getResourceFromURL(url);

    RegistrationInformation tuple = mURLs.get(streamName);
    if (tuple != null)
    {
      IURLProtocolHandler handler = tuple.getHandler();
      if (tuple.isUnmappingOnOpen())
      {
        IURLProtocolHandler oldHandler = unmapIO(tuple.getName());

        
        if (handler != null && !handler.equals(oldHandler))
        {
          
          log.error("stream {} already unmapped; it was likely already opened",

          tuple.getName());
          return null;
        }
      }
      return handler;
    }
    return null;
  }
public IURLProtocolHandler getHandler ( String protocol , String url , int flags ) { // Note: We need to remove any protocol markers from the url String streamName = URLProtocolManager . getResourceFromURL ( url ) ; RegistrationInformation tuple = mURLs . get ( streamName ) ; if ( tuple != null ) { IURLProtocolHandler handler = tuple . getHandler ( ) ; if ( tuple . isUnmappingOnOpen ( ) ) { IURLProtocolHandler oldHandler = unmapIO ( tuple . getName ( ) ) ; // the unmapIO is an atomic operation if ( handler != null && ! handler . equals ( oldHandler ) ) { // someone already unmapped this stream log . error ( "stream {} already unmapped; it was likely already opened" , tuple . getName ( ) ) ; return null ; } } return handler ; } return null ; }
{@inheritDoc}
{