Interface Segment

    • Method Detail

      • getDataInterval

        org.joda.time.Interval getDataInterval()
      • as

        @Nullable
        default <T> T as​(@Nonnull
                         Class<T> clazz)
        Request an implementation of a particular interface. If the passed-in interface is QueryableIndex or StorageAdapter, then this method behaves identically to asQueryableIndex() or asStorageAdapter(). Other interfaces are only expected to be requested by callers that have specific knowledge of extra features provided by specific segment types. For example, an extension might provide a custom Segment type that can offer both StorageAdapter and some new interface. That extension can also offer a Query that uses that new interface. Implementations which accept classes other than QueryableIndex or StorageAdapter are limited to using those classes within the extension. This means that one extension cannot rely on the `Segment.as` behavior of another extension.
        Type Parameters:
        T - desired interface
        Parameters:
        clazz - desired interface
        Returns:
        instance of clazz, or null if the interface is not supported by this segment