Co-locate the two cockpit-pod projects into a single repository:
- Console/ : TeslaConsole, the net48 WinForms operator console (decompiled
reconstruction) plus its differential + catalog test suite.
- Launcher/ : TeslaLauncher, the net6 pod-side Service + Agent rewrite.
Adds a combined TeslaSuite.sln, root README documenting the shared wire
contract (and its current duplication, the main follow-up), and a root
.gitignore. Histories were not preserved per request; this is a fresh start
from the current working state of both projects.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
32 lines
730 B
C#
32 lines
730 B
C#
using System;
|
|
using System.Text;
|
|
|
|
namespace TeslaConsole.RedPlanet;
|
|
|
|
[Serializable]
|
|
internal abstract class RPParticipant
|
|
{
|
|
private readonly string mPodHostAddress;
|
|
|
|
private readonly HostType mHostType;
|
|
|
|
public string PodHostAddress => mPodHostAddress;
|
|
|
|
public HostType HostType => mHostType;
|
|
|
|
protected RPParticipant(string podHostAddress, HostType hostType)
|
|
{
|
|
mPodHostAddress = podHostAddress;
|
|
mHostType = hostType;
|
|
}
|
|
|
|
public void AppendParticipant(int index, StringBuilder sb)
|
|
{
|
|
sb.AppendFormat("[{0}]\n", mPodHostAddress);
|
|
sb.AppendFormat("hostType={0}\n", (int)mHostType);
|
|
AppendParticipantSpecificData(index, sb);
|
|
}
|
|
|
|
protected abstract void AppendParticipantSpecificData(int index, StringBuilder sb);
|
|
}
|