package org.opendaylight.yangtools.yang.model.repo.api;
import com.google.common.annotations.Beta;
-import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
-import com.google.common.util.concurrent.MoreExecutors;
import java.util.Arrays;
import java.util.Collection;
import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
/**
- * An asynchronous factory for building {@link SchemaContext} instances based on a specification of what
+ * An asynchronous factory for building {@link EffectiveModelContext} instances based on a specification of what
* {@link SourceIdentifier}s are required and dynamic recursive resolution.
*/
@Beta
-// FIXME: 6.0.0: evaluate if we still need to extend SchemaContext here
-public interface EffectiveModelContextFactory extends SchemaContextFactory {
+public interface EffectiveModelContextFactory {
/**
* Create a new schema context containing specified sources, pulling in any dependencies they may have.
*
final SourceIdentifier... requiredSources) {
return createEffectiveModelContext(Arrays.asList(requiredSources));
}
-
- @Override
- @Deprecated
- default ListenableFuture<SchemaContext> createSchemaContext(
- final Collection<SourceIdentifier> requiredSources) {
- return Futures.transform(createEffectiveModelContext(requiredSources), ctx -> ctx,
- MoreExecutors.directExecutor());
- }
}
+++ /dev/null
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.yangtools.yang.model.repo.api;
-
-import com.google.common.annotations.Beta;
-import com.google.common.util.concurrent.ListenableFuture;
-import java.util.Arrays;
-import java.util.Collection;
-import org.eclipse.jdt.annotation.NonNull;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-
-/**
- * An asynchronous factory for building {@link SchemaContext} instances based on a specification of what
- * {@link SourceIdentifier}s are required and dynamic recursive resolution.
- *
- * @deprecated Use {@link EffectiveModelContextFactory} instead.
- */
-@Beta
-@Deprecated
-public interface SchemaContextFactory {
- /**
- * Create a new schema context containing specified sources, pulling in any dependencies they may have.
- *
- * @param requiredSources a collection of sources which are required to be present
- * @return A checked future, which will produce a schema context, or fail with an explanation why the creation
- * of the schema context failed.
- */
- @NonNull ListenableFuture<SchemaContext> createSchemaContext(
- @NonNull Collection<SourceIdentifier> requiredSources);
-
- default @NonNull ListenableFuture<SchemaContext> createSchemaContext(
- final SourceIdentifier... requiredSources) {
- return createSchemaContext(Arrays.asList(requiredSources));
- }
-}
import java.util.Set;
import org.junit.Before;
import org.junit.Test;
+import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
import org.opendaylight.yangtools.yang.model.repo.api.EffectiveModelContextFactory;
import org.opendaylight.yangtools.yang.model.repo.api.SchemaSourceRepresentation;
import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
}
private void testSetOfModules(final Collection<SourceIdentifier> source) throws Exception {
- final SchemaContext schemaContext = schemaContextFactory.createSchemaContext(source).get();
+ final EffectiveModelContext schemaContext = schemaContextFactory.createEffectiveModelContext(source).get();
final File outDir = new File("target/collection");
outDir.mkdirs();
for (final Module module : schemaContext.getModules()) {