Class ImmutableMarketData

    • Method Detail

      • of

        public static ImmutableMarketData of​(java.time.LocalDate valuationDate,
                                             java.util.Map<? extends MarketDataId<?>,​?> values)
        Obtains an instance from a valuation date and map of values.

        Use the builder for more more complex use cases, including setting time-series.

        Parameters:
        valuationDate - the valuation date associated with the market data
        values - the market data values
        Returns:
        a set of market data containing the values in the map
        Throws:
        java.lang.ClassCastException - if a value does not match the parameterized type associated with the identifier
      • builder

        public static ImmutableMarketDataBuilder builder​(java.time.LocalDate valuationDate)
        Creates a builder that can be used to build an instance of MarketData.
        Parameters:
        valuationDate - the valuation date
        Returns:
        the builder, not null
      • toBuilder

        public ImmutableMarketDataBuilder toBuilder()
        Returns a builder populated with the same data as this instance.
        Returns:
        the mutable builder, not null
      • containsValue

        public boolean containsValue​(MarketDataId<?> id)
        Description copied from interface: MarketData
        Checks if this market data contains a value for the specified identifier.
        Specified by:
        containsValue in interface MarketData
        Parameters:
        id - the identifier to find
        Returns:
        true if the market data contains a value for the identifier
      • combinedWith

        public ImmutableMarketData combinedWith​(ImmutableMarketData other)
        Combines this set of market data with another.

        The result combines both sets of market data. Values are taken from this set of market data if available, otherwise they are taken from the other set.

        The valuation dates of the sets of market data must be the same.

        Parameters:
        other - the other market data
        Returns:
        the combined market data
      • combinedWith

        public MarketData combinedWith​(MarketData other)
        Description copied from interface: MarketData
        Combines this market data with another.

        The result combines both sets of market data. Values are taken from this set of market data if available, otherwise they are taken from the other set.

        The valuation dates of the sets of market data must be the same.

        Specified by:
        combinedWith in interface MarketData
        Parameters:
        other - the other market data
        Returns:
        the combined market data
      • getValue

        public <T> T getValue​(MarketDataId<T> id)
        Description copied from interface: MarketData
        Gets the market data value associated with the specified identifier.

        If this market data instance contains the identifier, the value will be returned. Otherwise, an exception will be thrown.

        Specified by:
        getValue in interface MarketData
        Type Parameters:
        T - the type of the market data value
        Parameters:
        id - the identifier to find
        Returns:
        the market data value
      • findValue

        public <T> java.util.Optional<T> findValue​(MarketDataId<T> id)
        Description copied from interface: MarketData
        Finds the market data value associated with the specified identifier.

        If this market data instance contains the identifier, the value will be returned. Otherwise, an empty optional will be returned.

        Specified by:
        findValue in interface MarketData
        Type Parameters:
        T - the type of the market data value
        Parameters:
        id - the identifier to find
        Returns:
        the market data value, empty if not found
      • getIds

        public java.util.Set<MarketDataId<?>> getIds()
        Description copied from interface: MarketData
        Gets the market data identifiers.
        Specified by:
        getIds in interface MarketData
        Returns:
        the set of market data identifiers
      • findIds

        public <T> java.util.Set<MarketDataId<T>> findIds​(MarketDataName<T> name)
        Description copied from interface: MarketData
        Finds the market data identifiers associated with the specified name.

        This returns the unique identifiers that refer to the specified name. There may be more than one identifier associated with a name as the name is not unique.

        Specified by:
        findIds in interface MarketData
        Type Parameters:
        T - the type of the market data value
        Parameters:
        name - the name to find
        Returns:
        the set of market data identifiers, empty if name not found
      • getTimeSeriesIds

        public java.util.Set<ObservableId> getTimeSeriesIds()
        Description copied from interface: MarketData
        Gets the time-series identifiers.
        Specified by:
        getTimeSeriesIds in interface MarketData
        Returns:
        the set of observable identifiers
      • getTimeSeries

        public LocalDateDoubleTimeSeries getTimeSeries​(ObservableId id)
        Description copied from interface: MarketData
        Gets the time-series identified by the specified identifier, empty if not found.
        Specified by:
        getTimeSeries in interface MarketData
        Parameters:
        id - the identifier to find
        Returns:
        the time-series, empty if no time-series found
      • meta

        public static ImmutableMarketData.Meta meta()
        The meta-bean for ImmutableMarketData.
        Returns:
        the meta-bean, not null
      • getValuationDate

        public java.time.LocalDate getValuationDate()
        Gets the valuation date associated with the market data.
        Specified by:
        getValuationDate in interface MarketData
        Returns:
        the value of the property, not null
      • getValues

        public com.google.common.collect.ImmutableMap<MarketDataId<?>,​java.lang.Object> getValues()
        Gets the market data values.
        Returns:
        the value of the property, not null
      • getTimeSeries

        public com.google.common.collect.ImmutableMap<ObservableId,​LocalDateDoubleTimeSeries> getTimeSeries()
        Gets the time-series.

        If a request is made for a time-series that is not in the map, an empty series will be returned.

        Returns:
        the value of the property, not null
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object