LabFactoryProperties()
  {
	final InputStream rsFromContext = Thread.currentThread().getContextClassLoader().getResourceAsStream(RESOURCE_FACTORY);
	if ( rsFromContext != null ) {
	  LOGGER.trace("Resource found in Thread Context");
	}
	final InputStream resourceStream = (rsFromContext==null) ? ClassLoader.getSystemClassLoader().getResourceAsStream(RESOURCE_FACTORY) : rsFromContext;
	if (resourceStream != null)
	{
	  LOGGER.trace("Resource found in System ClassLoader");
	  try
	  {
		try
		{
		  load(resourceStream);
		}
		finally
		{
		  resourceStream.close();
		}
	  }
	  catch (final IOException e)
	  {
		throw new IllegalStateException("Failed to read factory properties", e);
	  }
	}
	else
	{
	  LOGGER.debug("LabFactory configuration resource is missing");
	}
  }