All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.davidmoten.odata.client.ObjectOrDeltaLink Maven / Gradle / Ivy

The newest version!
package com.github.davidmoten.odata.client;

import java.util.Optional;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.github.davidmoten.guavamini.Preconditions;

public final class ObjectOrDeltaLink {

    @JsonProperty("object")
    @JsonInclude(Include.NON_NULL)
    private final Optional object;

    @JsonProperty("deltaLink")
    @JsonInclude(Include.NON_NULL)
    private final Optional deltaLink;

    ObjectOrDeltaLink(Optional object, Optional deltaLink) {
        Preconditions.checkNotNull(object);
        Preconditions.checkNotNull(deltaLink);
        Preconditions
                .checkArgument(object.isPresent() && !deltaLink.isPresent() || !object.isPresent());
        this.object = object;
        this.deltaLink = deltaLink;
    }

    public Optional object() {
        return object;
    }

    public Optional deltaLink() {
        return deltaLink;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy