NodeTypes( @NonNull MergeType mergeType, @NonNull NodeKeyResolver nodeKeyResolver, boolean mutipleDeclarationAllowed, @Nullable AttributeModel.Builder... attributeModelBuilders) { this.mMergeType = Preconditions.checkNotNull(mergeType); this.mNodeKeyResolver = Preconditions.checkNotNull(nodeKeyResolver); @NonNull ImmutableList.Builder<AttributeModel> attributeModels = new ImmutableList.Builder<AttributeModel>(); if (attributeModelBuilders != null) { for (AttributeModel.Builder attributeModelBuilder : attributeModelBuilders) { attributeModels.add(attributeModelBuilder.build()); } } this.mAttributeModels = attributeModels.build(); this.mMultipleDeclarationAllowed = mutipleDeclarationAllowed; }