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