using System;
using UnityEditor.Build.Pipeline;
using UnityEditor.Build.Pipeline.Injector;
using UnityEditor.Build.Pipeline.Interfaces;
namespace UnityEditor.AddressableAssets.Build.BuildPipelineTasks
{
///
/// The BuildTask used to extract write data from the build.
///
public class ExtractDataTask : IBuildTask
{
///
/// The ExtractDataTask version.
///
public int Version { get { return 1; } }
///
/// Get the injected dependency data of the task.
///
public IDependencyData DependencyData { get { return m_DependencyData; } }
///
/// Get the injected write data of the task.
///
public IBundleWriteData WriteData { get { return m_WriteData; } }
///
/// Get the injected build cache of the task.
///
public IBuildCache BuildCache { get { return m_BuildCache; } }
///
/// The build context of the task.
///
public IBuildContext BuildContext { get { return m_BuildContext; } }
#pragma warning disable 649
[InjectContext(ContextUsage.In)]
IDependencyData m_DependencyData;
[InjectContext(ContextUsage.In)]
IBundleWriteData m_WriteData;
[InjectContext(ContextUsage.In)]
IBuildCache m_BuildCache;
[InjectContext(ContextUsage.In)]
internal IBuildContext m_BuildContext;
#pragma warning restore 649
///
/// Runs the ExtractDataTask. The data for this task is all injected context so no operations are performed in the Run step.
///
/// Success.
public ReturnCode Run()
{
return ReturnCode.Success;
}
}
}