Skip to content

Commit

Permalink
Exclude autogen code from Execute missing errs (#100)
Browse files Browse the repository at this point in the history
  • Loading branch information
helto4real committed Apr 27, 2020
1 parent 2da34f3 commit 04dacb0
Show file tree
Hide file tree
Showing 2 changed files with 97 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/DaemonRunner/DaemonRunner/Service/App/CodeManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -499,7 +499,8 @@ private void LoadAllCodeToLoadContext()

foreach (var syntaxTree in syntaxTrees)
{
WarnIfExecuteIsMissing(syntaxTree, compilation);
if (Path.GetFileName(syntaxTree.FilePath) != "_EntityExtensions.cs")
WarnIfExecuteIsMissing(syntaxTree, compilation);
}

var emitOptions = new EmitOptions(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
using JoySoftware.HomeAssistant.NetDaemon.Common;

namespace Netdaemon.Generated.Extensions
{
public static partial class EntityExtension
{
public static LightEntities LightEx(this NetDaemonApp app) => new LightEntities(app);
public static SwitchEntities SwitchEx(this NetDaemonApp app) => new SwitchEntities(app);
public static SceneEntities SceneEx(this NetDaemonApp app) => new SceneEntities(app);
public static ScriptEntities ScriptEx(this NetDaemonApp app) => new ScriptEntities(app);
public static AutomationEntities AutomationEx(this NetDaemonApp app) => new AutomationEntities(app);
public static MediaPlayerEntities MediaPlayerEx(this NetDaemonApp app) => new MediaPlayerEntities(app);
public static CameraEntities CameraEx(this NetDaemonApp app) => new CameraEntities(app);
}

public partial class LightEntities
{
private readonly NetDaemonApp _app;
public LightEntities(NetDaemonApp app)
{
_app = app;
}

public IEntity HallByra => _app.Entity("light.hall_byra");

}

public partial class SwitchEntities
{
private readonly NetDaemonApp _app;
public SwitchEntities(NetDaemonApp app)
{
_app = app;
}

public IEntity Switch7 => _app.Entity("switch.switch7");

}

public partial class SceneEntities
{
private readonly NetDaemonApp _app;
public SceneEntities(NetDaemonApp app)
{
_app = app;
}

public IEntity Dag => _app.Entity("scene.day");

}

public partial class ScriptEntities
{
private readonly NetDaemonApp _app;
public ScriptEntities(NetDaemonApp app)
{
_app = app;
}

public IEntity DayScene => _app.Entity("script.day_scene");
}

public partial class AutomationEntities
{
private readonly NetDaemonApp _app;
public AutomationEntities(NetDaemonApp app)
{
_app = app;
}

public IEntity SetThemeAtStartup => _app.Entity("automation.set_theme_at_startup");
}

public partial class MediaPlayerEntities
{
private readonly NetDaemonApp _app;
public MediaPlayerEntities(NetDaemonApp app)
{
_app = app;
}

public IMediaPlayer Tv => _app.MediaPlayer("media_player.tv");
}

public partial class CameraEntities
{
private readonly NetDaemonApp _app;
public CameraEntities(NetDaemonApp app)
{
_app = app;
}

public ICamera MyCamera => _app.Camera("camera.my_camera");
}
}

0 comments on commit 04dacb0

Please sign in to comment.