@@ -0,0 +1,1844 @@
+/*%0A * Copyright (C) 2017 The Android Open Source Project%0A *%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *      http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0Apackage com.google.android.exoplayer2.upstream;%0A%0Aimport com.google.android.exoplayer2.upstream.DataSource.Factory;%0Aimport com.google.android.exoplayer2.util.PriorityTaskManager;%0A%0A/**%0A * A %7B@link DataSource.Factory%7D that produces %7B@link PriorityDataSource%7D instances.%0A */%0Apublic final class PriorityDataSourceFactory implements Factory %7B%0A%0A  private final Factory upstreamFactory;%0A  private final PriorityTaskManager priorityTaskManager;%0A  private final int priority;%0A%0A  /**%0A   * @param upstreamFactory A %7B@link DataSource.Factory%7D to be used to create an upstream %7B@link%0A   *     DataSource%7D for %7B@link PriorityDataSource%7D.%0A   * @param priorityTaskManager The priority manager to which PriorityDataSource task is registered.%0A   * @param priority The priority of PriorityDataSource task.%0A   */%0A  public PriorityDataSourceFactory(Factory upstreamFactory, PriorityTaskManager priorityTaskManager,%0A      int priority) %7B%0A    this.upstreamFactory = upstreamFactory;%0A    this.priorityTaskManager = priorityTaskManager;%0A    this.priority = priority;%0A  %7D%0A%0A  @Override%0A  public PriorityDataSource createDataSource() %7B%0A    return new PriorityDataSource(upstreamFactory.createDataSource(), priorityTaskManager,%0A        priority);%0A  %7D%0A%0A%7D%0A

Add PriorityDataSourceFactory