*/
package org.opendaylight.yangtools.yang.model.util.type;
-import com.google.common.base.Preconditions;
-import java.util.List;
+import static java.util.Objects.requireNonNull;
+
+import java.util.Collection;
import java.util.Set;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
import org.opendaylight.yangtools.yang.model.api.SchemaPath;
import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
-final class BaseIdentityrefType extends AbstractBaseType<IdentityrefTypeDefinition> implements IdentityrefTypeDefinition {
- private final IdentitySchemaNode identity;
- private final Set<IdentitySchemaNode> identities;
+final class BaseIdentityrefType extends AbstractBaseType<IdentityrefTypeDefinition>
+ implements IdentityrefTypeDefinition {
+ private final @NonNull Set<? extends IdentitySchemaNode> identities;
- BaseIdentityrefType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
- final IdentitySchemaNode identity, final Set<IdentitySchemaNode> identities) {
+ BaseIdentityrefType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+ final Set<? extends IdentitySchemaNode> identities) {
super(path, unknownSchemaNodes);
- this.identity = Preconditions.checkNotNull(identity);
- this.identities = Preconditions.checkNotNull(identities);
- }
-
- @Override
- public IdentitySchemaNode getIdentity() {
- return identity;
+ this.identities = requireNonNull(identities);
}
@Override
- public Set<IdentitySchemaNode> getIdentities() {
+ public Set<? extends IdentitySchemaNode> getIdentities() {
return identities;
}
@Override
public int hashCode() {
- return TypeDefinitions.hashCode(this);
+ return IdentityrefTypeDefinition.hashCode(this);
}
@Override
public boolean equals(final Object obj) {
- return TypeDefinitions.equals(this, obj);
+ return IdentityrefTypeDefinition.equals(this, obj);
}
@Override
public String toString() {
- return TypeDefinitions.toString(this);
+ return IdentityrefTypeDefinition.toString(this);
}
}