import com.google.common.annotations.Beta;
import com.google.common.util.concurrent.CheckedFuture;
import java.util.Collection;
-import java.util.function.Predicate;
+import java.util.Set;
import javax.annotation.Nonnull;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.model.api.SchemaContext;
* failed.
*/
default CheckedFuture<SchemaContext, SchemaResolutionException> createSchemaContext(
- @Nonnull Collection<SourceIdentifier> requiredSources) {
- return createSchemaContext(requiredSources, StatementParserMode.DEFAULT_MODE, IfFeaturePredicates.ALL_FEATURES);
+ @Nonnull final Collection<SourceIdentifier> requiredSources) {
+ return createSchemaContext(requiredSources, StatementParserMode.DEFAULT_MODE);
}
/**
* failed.
*/
default CheckedFuture<SchemaContext, SchemaResolutionException> createSchemaContext(
- Collection<SourceIdentifier> requiredSources, StatementParserMode statementParserMode) {
- return createSchemaContext(requiredSources, statementParserMode, IfFeaturePredicates.ALL_FEATURES);
+ final Collection<SourceIdentifier> requiredSources, final StatementParserMode statementParserMode) {
+ return createSchemaContext(requiredSources, statementParserMode, null);
}
/**
*
* @param requiredSources
* a collection of sources which are required to be present
- * @param isFeatureSupported
- * a predicate based on which all if-feature statements in the
+ * @param supportedFeatures
+ * set of supported features based on which all if-feature statements in the
* parsed yang models are resolved
* @return A checked future, which will produce a schema context, or fail
* with an explanation why the creation of the schema context
* failed.
*/
default CheckedFuture<SchemaContext, SchemaResolutionException> createSchemaContext(
- @Nonnull Collection<SourceIdentifier> requiredSources, Predicate<QName> isFeatureSupported) {
- return createSchemaContext(requiredSources, StatementParserMode.DEFAULT_MODE, isFeatureSupported);
+ @Nonnull final Collection<SourceIdentifier> requiredSources, final Set<QName> supportedFeatures) {
+ return createSchemaContext(requiredSources, StatementParserMode.DEFAULT_MODE, supportedFeatures);
}
/**
* a collection of sources which are required to be present
* @param statementParserMode
* mode of statement parser
- * @param isFeatureSupported
- * a predicate based on which all if-feature statements in the
+ * @param supportedFeatures
+ * set of supported features based on which all if-feature statements in the
* parsed yang models are resolved
* @return A checked future, which will produce a schema context, or fail
* with an explanation why the creation of the schema context
*/
CheckedFuture<SchemaContext, SchemaResolutionException> createSchemaContext(
Collection<SourceIdentifier> requiredSources, StatementParserMode statementParserMode,
- Predicate<QName> isFeatureSupported);
+ Set<QName> supportedFeatures);
}