package de.ivu.elect.jee.entity.customdata;

import java.util.function.Supplier;

import de.ivu.elect.jee.entity.Entity;
import de.ivu.elect.jee.protokollierung.AttributTyp;

/**
 */
public class EmptyCustomData extends DefaultCustomData {

  public static final EmptyCustomData INSTANCE = new EmptyCustomData();

  @Override
  public CustomDataProperties getProperties(CustomDataPropertiesFactory customDataPropertiesBuilder) {
    throw new UnsupportedOperationException();
  }

  @Override
  public CustomDataEntity getStorageEntity() {
    throw new UnsupportedOperationException();
  }

  @Override
  public void setStorageEntity(CustomDataStorageEntity entity) {
    throw new UnsupportedOperationException();
  }

  @Override
  protected boolean notifyEntity(String attributeName, AttributTyp typ, Object oldValue, Object newValue) {
    throw new UnsupportedOperationException();
  }

  @Override
  protected void notifyEntity() {
    throw new UnsupportedOperationException();
  }

  @Override
  public Entity<?, ?> getTechnicalEntity() {
    throw new UnsupportedOperationException();
  }

  @Override
  public void setTechnicalEntity(Entity<?, ?> technicalEntity) {
    throw new UnsupportedOperationException();
  }
}
