in src/Aspire.Hosting.AWS/DynamoDB/DynamoDBLocalResource.cs [10:50]
internal sealed class DynamoDBLocalResource(string name, DynamoDBLocalOptions options) : ContainerResource(name), IDynamoDBLocalResource
{
internal const int DynamoDBInternalPort = 8000;
internal const string InternalStorageMountPoint = "/storage";
internal DynamoDBLocalOptions Options { get; } = options;
/// <summary>
/// Create the list of command line arguments that must be used when running the DynamoDB local container image.
/// </summary>
/// <returns></returns>
internal string[] CreateContainerImageArguments()
{
var arguments = new List<string>
{
"-Djava.library.path=./DynamoDBLocal_lib",
"-jar",
"DynamoDBLocal.jar"
};
if (Options.SharedDb)
arguments.Add("-sharedDb");
if (Options.InMemory)
arguments.Add("-inMemory");
if (Options.DisableDynamoDBLocalTelemetry)
arguments.Add("-disableTelemetry");
if (!string.IsNullOrEmpty(Options.LocalStorageDirectory))
{
arguments.Add("-dbPath");
arguments.Add(InternalStorageMountPoint);
}
if (Options.DelayTransientStatuses)
arguments.Add("-delayTransientStatuses");
return arguments.ToArray();
}
}