@Override
    public Object getProperty(final String name) throws IllegalArgumentException {
    	if (name == null) {
    		throw new IllegalArgumentException("Property name is not allowed to be null");
    	}
    	if (XMLInputFactory.ALLOCATOR.equals(name)) {
    		return null;
    	}
    	if (XMLInputFactory.IS_COALESCING.equals(name)) {
    		return formatstack.getDefaultMode() != TextMode.PRESERVE;
    	}
    	if (XMLInputFactory.IS_NAMESPACE_AWARE.equals(name)) {
    		return Boolean.TRUE;
    	}
    	if (XMLInputFactory.IS_REPLACING_ENTITY_REFERENCES.equals(name)) {
    		return Boolean.FALSE;
    	}
    	if (XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES.equals(name)) {
    		return Boolean.FALSE;
    	}
    	if (XMLInputFactory.IS_VALIDATING.equals(name)) {
    		return Boolean.TRUE;
    	}
    	if (XMLInputFactory.REPORTER.equals(name)) {
    		return null;
    	}
    	if (XMLInputFactory.RESOLVER.equals(name)) {
    		return null;
    	}
        return null;
    }