Class DefaultSurfaceMetadataBuilder


  • public final class DefaultSurfaceMetadataBuilder
    extends java.lang.Object
    Builder for surface metadata.

    This is created using DefaultSurfaceMetadata.builder().

    • Method Detail

      • surfaceName

        public DefaultSurfaceMetadataBuilder surfaceName​(java.lang.String surfaceName)
        Sets the surface name.
        Parameters:
        surfaceName - the surface name
        Returns:
        this, for chaining
      • xValueType

        public DefaultSurfaceMetadataBuilder xValueType​(ValueType xValueType)
        Sets the x-value type, providing meaning to the x-values of the surface.

        This type provides meaning to the x-values.

        If using the builder, this defaults to ValueType.UNKNOWN.

        Parameters:
        xValueType - the x-value type
        Returns:
        this, for chaining
      • yValueType

        public DefaultSurfaceMetadataBuilder yValueType​(ValueType yValueType)
        Sets the y-value type, providing meaning to the y-values of the surface.

        This type provides meaning to the y-values.

        If using the builder, this defaults to ValueType.UNKNOWN.

        Parameters:
        yValueType - the y-value type
        Returns:
        this, for chaining
      • zValueType

        public DefaultSurfaceMetadataBuilder zValueType​(ValueType zValueType)
        Sets the z-value type, providing meaning to the z-values of the surface.

        This type provides meaning to the z-values.

        If using the builder, this defaults to ValueType.UNKNOWN.

        Parameters:
        zValueType - the z-value type
        Returns:
        this, for chaining
      • dayCount

        public DefaultSurfaceMetadataBuilder dayCount​(DayCount dayCount)
        Sets the day count.

        This stores the day count in the additional information map using the key SurfaceInfoType.DAY_COUNT.

        This is stored in the additional information map using Map.put semantics, removing the key if the day count is null.

        Parameters:
        dayCount - the day count, may be null
        Returns:
        this, for chaining
      • addInfo

        public <T> DefaultSurfaceMetadataBuilder addInfo​(SurfaceInfoType<T> type,
                                                         T value)
        Adds a single piece of additional information.

        This is stored in the additional information map using Map.put semantics, removing the key if the instance is null.

        Type Parameters:
        T - the type of the info
        Parameters:
        type - the type to store under
        value - the value to store, may be null
        Returns:
        this, for chaining
      • parameterMetadata

        public DefaultSurfaceMetadataBuilder parameterMetadata​(java.util.List<? extends ParameterMetadata> parameterMetadata)
        Sets the parameter-level metadata.

        The parameter metadata must match the number of parameters on the surface. This will replace the existing parameter-level metadata.

        Parameters:
        parameterMetadata - the parameter metadata
        Returns:
        this, for chaining
      • parameterMetadata

        public DefaultSurfaceMetadataBuilder parameterMetadata​(ParameterMetadata... parameterMetadata)
        Sets the parameter-level metadata.

        The parameter metadata must match the number of parameters on the surface. This will replace the existing parameter-level metadata.

        Parameters:
        parameterMetadata - the parameter metadata
        Returns:
        this, for chaining
      • clearParameterMetadata

        public DefaultSurfaceMetadataBuilder clearParameterMetadata()
        Clears the parameter-level metadata.

        The existing parameter-level metadata will be removed.

        Returns:
        this, for chaining