1
0
mirror of synced 2024-11-15 01:33:51 +00:00
PettingZoo/PettingZoo.Core/Generator/IExampleGenerator.cs

34 lines
734 B
C#
Raw Permalink Normal View History

using System;
using PettingZoo.Core.Validation;
namespace PettingZoo.Core.Generator
{
public interface IExampleGenerator
{
void Select(object? ownerWindow, Action<IExample> onExampleSelected);
}
public interface IExample
{
string Generate();
}
public interface IClassTypeExample : IExample
{
string AssemblyName { get; }
string? Namespace { get; }
string ClassName { get; }
string FullClassName => (!string.IsNullOrEmpty(Namespace) ? Namespace + "." : "") + ClassName;
bool TryGetPublishDestination(out string exchange, out string routingKey);
}
public interface IValidatingExample : IExample, IPayloadValidator
{
}
}