mirror of
https://github.com/xivdev/Penumbra.git
synced 2025-12-12 10:17:22 +01:00
Update HttpApi.cs allows external applications to tell penumbra about a mod package to unpack
This commit is contained in:
parent
69ce929c5e
commit
eddbd2b14f
1 changed files with 24 additions and 0 deletions
|
|
@ -16,6 +16,8 @@ public class HttpApi : IDisposable
|
|||
[Route( HttpVerbs.Post, "/redraw" )] public partial Task Redraw();
|
||||
[Route( HttpVerbs.Post, "/redrawAll" )] public partial void RedrawAll();
|
||||
[Route( HttpVerbs.Post, "/reloadmod" )] public partial Task ReloadMod();
|
||||
[Route( HttpVerbs.Post, "/unpackmod" )] public partial Task UnpackMod();
|
||||
[Route( HttpVerbs.Post, "/openwindow")] public partial Task OpenWindow();
|
||||
// @formatter:on
|
||||
}
|
||||
|
||||
|
|
@ -110,6 +112,23 @@ public class HttpApi : IDisposable
|
|||
// Reload the mod by path or name, which will also remove no-longer existing mods.
|
||||
_api.ReloadMod( data.Path, data.Name );
|
||||
}
|
||||
public async partial Task UnpackMod()
|
||||
{
|
||||
var data = await HttpContext.GetRequestDataAsync< ModUnpackData >();
|
||||
Penumbra.Log.Debug( $"[HTTP] {nameof( UnpackMod )} triggered with {data}." );
|
||||
// Unpack the mod package if its valid.
|
||||
if( data.Path.Length != 0 )
|
||||
{
|
||||
_api.UnpackMod( data.Path );
|
||||
}
|
||||
}
|
||||
|
||||
public async partial Task OpenWindow()
|
||||
{
|
||||
Penumbra.Log.Debug($"[HTTP] {nameof(OpenWindow)} triggered.");
|
||||
// Open the penumbra window
|
||||
_api.OpenMainWindow(TabType.Mods, "", "");
|
||||
}
|
||||
|
||||
private record ModReloadData( string Path, string Name )
|
||||
{
|
||||
|
|
@ -117,6 +136,11 @@ public class HttpApi : IDisposable
|
|||
: this( string.Empty, string.Empty )
|
||||
{ }
|
||||
}
|
||||
private record ModUnpackData( string Path)
|
||||
{
|
||||
public ModUnpackData()
|
||||
: this( string.Empty) { }
|
||||
}
|
||||
|
||||
private record RedrawData( string Name, RedrawType Type, int ObjectTableIndex )
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue