Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
using System;

namespace Beamable.Common.BeamCli.Contracts
{
/// <summary>
/// Contract projection of the autogenerated <c>BundleTag</c> API model. The generated model
/// uses Optional-wrapped fields and only exists in the CLI assembly, so command outputs expose
/// this type instead, allowing it to be copied into other SDKs.
/// </summary>
[CliContractType, Serializable]
public class BundleTagInfo
{
/// <summary>
/// The fully qualified bundle name the tag belongs to.
/// </summary>
public string bundleName;

/// <summary>
/// The content checksum (sha256:...) the tag currently points at.
/// </summary>
public string checksum;

/// <summary>
/// The tag name (e.g. "latest").
/// </summary>
public string tag;

/// <summary>
/// Unix timestamp (milliseconds) of when the tag was last moved.
/// </summary>
public long updatedAt;
}
}
16 changes: 16 additions & 0 deletions cli/beamable.common/Runtime/Content/Optionals.cs
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,22 @@ public OptionalArrayOfString(IEnumerable<string> data)
}
}

[System.Serializable]
[Agnostic]
public class OptionalArrayOfArrayOfString : OptionalArray<string[]>
{
public OptionalArrayOfArrayOfString()
{

}

public OptionalArrayOfArrayOfString(IEnumerable<string[]> data)
{
Value = data.ToArray();
HasValue = true;
}
}

[System.Serializable]
[Agnostic]
public class OptionalArrayOfFloat : OptionalArray<float> { }
Expand Down
36 changes: 36 additions & 0 deletions cli/beamable.common/Runtime/OpenApi/BeamAnalytics.gs.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

namespace Beamable.Api.Autogenerated.Analytics
{
using Beamable.Api.Autogenerated.Models;
using Beamable.Common.Content;
using Beamable.Common;
using IBeamableRequester = Beamable.Common.Api.IBeamableRequester;
using Method = Beamable.Common.Api.Method;
using Beamable.Common.Dependencies;

public partial interface IBeamAnalyticsApi
{
/// <summary>
/// POST call to `/api/analytics/query` endpoint.
/// </summary>
/// <param name="gsReq">The <see cref="AnalyticsQueryRequest"/> instance to use for the request</param>
/// <param name="includeAuthHeader">By default, every request will include an authorization header so that the request acts on behalf of the current user. When the includeAuthHeader argument is false, the request will not include the authorization header for the current user.</param>
/// <returns>A promise containing the <see cref="ApiAnalyticsQueryPostAnalyticsResponse"/></returns>
Promise<ApiAnalyticsQueryPostAnalyticsResponse> PostQuery(AnalyticsQueryRequest gsReq, [System.Runtime.InteropServices.DefaultParameterValueAttribute(true)] [System.Runtime.InteropServices.OptionalAttribute()] bool includeAuthHeader);
}
public partial class BeamAnalyticsApi : IBeamAnalyticsApi
{
/// <summary>
/// POST call to `/api/analytics/query` endpoint.
/// </summary>
/// <param name="gsReq">The <see cref="AnalyticsQueryRequest"/> instance to use for the request</param>
/// <param name="includeAuthHeader">By default, every request will include an authorization header so that the request acts on behalf of the current user. When the includeAuthHeader argument is false, the request will not include the authorization header for the current user.</param>
/// <returns>A promise containing the <see cref="ApiAnalyticsQueryPostAnalyticsResponse"/></returns>
public virtual Promise<ApiAnalyticsQueryPostAnalyticsResponse> PostQuery(AnalyticsQueryRequest gsReq, [System.Runtime.InteropServices.DefaultParameterValueAttribute(true)] [System.Runtime.InteropServices.OptionalAttribute()] bool includeAuthHeader)
{
string gsUrl = "/api/analytics/query";
// make the request and return the result
return _requester.Request<ApiAnalyticsQueryPostAnalyticsResponse>(Method.POST, gsUrl, Beamable.Serialization.JsonSerializable.ToJson(gsReq), includeAuthHeader, this.Serialize<ApiAnalyticsQueryPostAnalyticsResponse>);
}
}
}
42 changes: 42 additions & 0 deletions cli/beamable.common/Runtime/OpenApi/BeamAnalyticsCommon.gs.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@

namespace Beamable.Api.Autogenerated.Analytics
{
using Beamable.Api.Autogenerated.Models;
using Beamable.Common.Content;
using Beamable.Common;
using IBeamableRequester = Beamable.Common.Api.IBeamableRequester;
using Method = Beamable.Common.Api.Method;
using Beamable.Common.Dependencies;

public partial interface IBeamAnalyticsApi
{
}
public partial class BeamAnalyticsApi : IBeamAnalyticsApi
{
private IBeamableRequester _requester;
private IDependencyProvider _provider;
private System.Collections.Generic.List<Beamable.Serialization.JsonSerializable.ISerializableFactory> _serializationFactories;
public BeamAnalyticsApi(IBeamableRequester requester, [System.Runtime.InteropServices.DefaultParameterValueAttribute(default(Beamable.Common.Dependencies.IDependencyProvider))] [System.Runtime.InteropServices.OptionalAttribute()] IDependencyProvider provider)
{
this._requester = requester;
_provider = provider;
_serializationFactories = new System.Collections.Generic.List<Beamable.Serialization.JsonSerializable.ISerializableFactory>();
_serializationFactories.Add(new IOneOf_HttpCallOrPublishMessageOrServiceCallFactory());
_serializationFactories.Add(new IOneOf_CronTriggerOrExactTriggerFactory());
_serializationFactories.Add(new IOneOf_ContentOrTextOrBinaryFactory());
}
private T Serialize<T>(string json)
where T : Beamable.Serialization.JsonSerializable.ISerializable, new ()
{
if ((_provider != default(Beamable.Common.Dependencies.IDependencyProvider)))
{
if (_provider.CanBuildService<ICustomSerializer<T>>())
{
ICustomSerializer<T> serializer = _provider.GetService<ICustomSerializer<T>>();
return serializer.Deserialize(json);
}
}
return Beamable.Serialization.JsonSerializable.FromJson<T>(json, _serializationFactories);
}
}
}
Loading
Loading