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

net.nemerosa.resources.Resources Maven / Gradle / Ivy

The newest version!
package net.nemerosa.resources;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.net.URI;
import java.util.Collection;

@EqualsAndHashCode(callSuper = false)
@Data
public class Resources extends LinkContainer> {

    @JsonInclude(JsonInclude.Include.NON_NULL)
    private final Pagination pagination;
    private final Collection resources;

    protected Resources(Collection resources, URI self, Pagination pagination) {
        super(self);
        this.pagination = pagination;
        this.resources = resources;
    }

    public static  Resources of(Collection resources, URI href) {
        return new Resources<>(resources, href, Pagination.NONE);
    }

    public Resources withPagination(Pagination pagination) {
        return this.pagination == pagination ? this : new Resources<>(this.resources, get_self(), pagination);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy