Add resource action. Implement play chart and import resource action.
This commit is contained in:
14
Assets/Cryville/Crtr/Browsing/Actions/ResourceAction.cs
Normal file
14
Assets/Cryville/Crtr/Browsing/Actions/ResourceAction.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
|
||||
namespace Cryville.Crtr.Browsing.Actions {
|
||||
public abstract class ResourceAction<T> : IResourceAction<T> {
|
||||
public abstract string Name { get; }
|
||||
public abstract int Priority { get; }
|
||||
public abstract void Invoke(Uri uri, T resource);
|
||||
public void Invoke(Uri uri, object resource) {
|
||||
if (resource == null) throw new ArgumentNullException("resource");
|
||||
if (!(resource is T)) throw new ArgumentException("Mismatched resource type.");
|
||||
Invoke(uri, (T)resource);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user