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;
}
}
}