// @formatter:off
package %s;

import hope.common.spring.data.config.HopeDataProperties;
import hope.common.spring.data.persistence.context.PersistenceContext;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Generated;

@Generated("H.O.P.E. Infra Team")
public class %sPersistenceContext implements PersistenceContext<%s, %s> {

  @Autowired(required = false)
  protected HopeDataProperties properties;

  @Override
  public %s defaultUserId() {
    return properties != null ? properties.%s() : %s;
  }

  @Override
  public %s defaultTenant() {
    return properties != null ? properties.%s() : %s;
  }

  @Override
  public Class identifierClass() {
    return %s.class;
  }

  @Override
  public Class tenantClass() {
    return %s.class;
  }

  @Override
  public String domain() {
    return "%s";
  }

  @Override
  public boolean isDefault() {
    return %s;
  }
}
