namespace TodoList.Application.DynamicApi;

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class HttpGetAttribute : Attribute
{
    public string? Route { get; set; }

    public HttpGetAttribute()
    {
    }

    public HttpGetAttribute(string route)
    {
        Route = route;
    }
}

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class HttpPostAttribute : Attribute
{
    public string? Route { get; set; }

    public HttpPostAttribute()
    {
    }

    public HttpPostAttribute(string route)
    {
        Route = route;
    }
}

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class HttpPutAttribute : Attribute
{
    public string? Route { get; set; }

    public HttpPutAttribute()
    {
    }

    public HttpPutAttribute(string route)
    {
        Route = route;
    }
}

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class HttpDeleteAttribute : Attribute
{
    public string? Route { get; set; }

    public HttpDeleteAttribute()
    {
    }

    public HttpDeleteAttribute(string route)
    {
        Route = route;
    }
}

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class HttpPatchAttribute : Attribute
{
    public string? Route { get; set; }

    public HttpPatchAttribute()
    {
    }

    public HttpPatchAttribute(string route)
    {
        Route = route;
    }
}
