class OpenMetadataArchiveProperties extends OpenMetadataArchiveElementHeader {

    @Override
    public boolean equals(Object objectToCompare)
    {
        if (this == objectToCompare)
        {
            return true;
        }
        if (objectToCompare == null || getClass() != objectToCompare.getClass())
        {
            return false;
        }
        OpenMetadataArchiveProperties that = (OpenMetadataArchiveProperties) objectToCompare;
        return Objects.equals(getArchiveGUID(), that.getArchiveGUID()) &&
                Objects.equals(getArchiveName(), that.getArchiveName()) &&
                Objects.equals(getArchiveDescription(), that.getArchiveDescription()) &&
                getArchiveType() == that.getArchiveType() &&
                Objects.equals(getArchiveVersion(), that.getArchiveVersion()) &&
                Objects.equals(getOriginatorName(), that.getOriginatorName()) &&
                Objects.equals(getOriginatorOrganization(), that.getOriginatorOrganization()) &&
                Objects.equals(getOriginatorLicense(), that.getOriginatorLicense()) &&
                Objects.equals(getCreationDate(), that.getCreationDate()) &&
                Objects.equals(getDependsOnArchives(), that.getDependsOnArchives());
    }

    public  OpenMetadataArchiveProperties();
    public  OpenMetadataArchiveProperties(OpenMetadataArchiveProperties  template);

}