class SoapSTSInstanceConfig extends STSInstanceConfig {

    @Override
    public boolean equals(Object other) {
        if (other instanceof SoapSTSInstanceConfig) {
            SoapSTSInstanceConfig otherConfig = (SoapSTSInstanceConfig)other;
            return  super.equals(otherConfig) &&
                    (delegationRelationshipsSupported == otherConfig.delegationRelationshipsSupported) &&
                    Objects.equal(soapDelegationConfig, otherConfig.getSoapDelegationConfig())  &&
                    Objects.equal(keystoreConfig, otherConfig.getKeystoreConfig()) &&
                    deploymentConfig.equals(otherConfig.getDeploymentConfig()) &&
                    Objects.equal(issueTokenTypes, otherConfig.getIssueTokenTypes()) &&
                    Objects.equal(securityPolicyValidatedTokenConfiguration, otherConfig.getSecurityPolicyValidatedTokenConfiguration());
        }
        return false;
    }

    private  SoapSTSInstanceConfig(SoapSTSInstanceConfigBuilderBase<?> builder);

}