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

org.continuity.api.entities.links.AbstractLinks Maven / Gradle / Ivy

The newest version!
package org.continuity.api.entities.links;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIgnore;

public abstract class AbstractLinks> {

	@JsonBackReference
	private final LinkExchangeModel parent;

	public AbstractLinks(LinkExchangeModel parent) {
		this.parent = parent;
	}

	public LinkExchangeModel parent() {
		return parent;
	}

	@JsonIgnore
	public abstract boolean isEmpty();

	public abstract void merge(T other) throws IllegalArgumentException, IllegalAccessException;

	public static class ValueFilter {

		@Override
		public boolean equals(Object obj) {
			if ((obj == null) || !(obj instanceof AbstractLinks)) {
				return false;
			}

			AbstractLinks links = (AbstractLinks) obj;
			return links.isEmpty();
		}

	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy