@SuppressWarnings("unchecked")
    protected static <V extends AbstractUserInterfaceObject> V get(final Long _id,
                               final Class<V> _componentType,
                               final Type _type)
        throws CacheReloadException
    {
        final Cache<Long, V> cache = InfinispanCache.get().<Long, V>getCache(
                        AbstractUserInterfaceObject.getIDCacheName(_componentType));
        if (!cache.containsKey(_id) && !
                        AbstractUserInterfaceObject.readObjectFromDB(_componentType, _type, CIAdmin.Abstract.ID, _id)) {
            cache.put(_id, (V) getNull(_componentType), 100, TimeUnit.SECONDS);
        }
        final V ret = cache.get(_id);
        return ret.equals(getNull(_componentType)) ? null : ret;
    }
@ SuppressWarnings ( "unchecked" ) protected static < V extends AbstractUserInterfaceObject > V get ( final Long _id , final Class < V > _componentType , final Type _type ) throws CacheReloadException { final Cache < Long , V > cache = InfinispanCache . get ( ) . < Long , V > getCache ( AbstractUserInterfaceObject . getIDCacheName ( _componentType ) ) ; if ( ! cache . containsKey ( _id ) && ! AbstractUserInterfaceObject . readObjectFromDB ( _componentType , _type , CIAdmin . Abstract . ID , _id ) ) { cache . put ( _id , ( V ) getNull ( _componentType ) , 100 , TimeUnit . SECONDS ) ; } final V ret = cache . get ( _id ) ; return ret . equals ( getNull ( _componentType ) ) ? null : ret ; }
@param _id ID of the UIObject wanted
@param _componentType type of the UIObject
@param _type datamodel type of the object
@param <V> Object type
@return UIObject
@throws CacheReloadException on error