@Override
	public <T> T firstValue(final Class<? extends T> aClazz) {
		Property property=getProperty();
		if(property==null) {
			return null;
		}
		LiteralValueExtractor<T> extractor =LiteralValueExtractor.newInstance(aClazz);
		for(Value value:property) {
			value.accept(extractor);
			if(extractor.isAvailable()) {
				break;
			}
		}
		return extractor.getValue();
	}
@Override
	public <T> T firstValue(final Class<? extends T> aClazz) {
		Property property=getProperty();
		if(property==null) {
			return null;
		}
		LiteralValueExtractor<T> extractor =LiteralValueExtractor.newInstance(aClazz);
		for(Value value:property) {
			value.accept(extractor);
			if(extractor.isAvailable()) {
				break;
			}
		}
		return extractor.getValue();
	}
@ Override public < T > T firstValue ( final Class < ? extends T > aClazz ) { Property property = getProperty ( ) ; if ( property == null ) { return null ; } LiteralValueExtractor < T > extractor = LiteralValueExtractor . newInstance ( aClazz ) ; for ( Value value : property ) { value . accept ( extractor ) ; if ( extractor . isAvailable ( ) ) { break ; } } return extractor . getValue ( ) ; }
{@inheritDoc}
{