This commit is contained in:
watrabi
2025-09-18 17:55:52 -04:00
commit 977f1ff4b8
15030 changed files with 17324420 additions and 0 deletions
@@ -0,0 +1,263 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
###################
# compiled source #
###################
*.com
*.class
*.dll
*.exe
*.pdb
*.dll.config
*.cache
*.suo
# Include dlls if theyre in the NuGet packages directory
!/packages/*/lib/*.dll
# Include dlls if they're in the CommonReferences directory
!*CommonReferences/*.dll
####################
# VS Upgrade stuff #
####################
_UpgradeReport_Files/
###############
# Directories #
###############
bin/
obj/
TestResults/
###################
# Web publish log #
###################
*.Publish.xml
#############
# Resharper #
#############
/_ReSharper.*
*.ReSharper.*
############
# Packages #
############
# its better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
######################
# Logs and databases #
######################
*.log
*.sqlite
# OS generated files #
######################
.DS_Store?
ehthumbs.db
Icon?
Thumbs.db
# User-specific files
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
build/
bld/
[Bb]in/
[Oo]bj/
# Visual Studo 2015 cache/options directory
.vs/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# DNX
project.lock.json
artifacts/
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile
# Visual Studio profiler
*.psess
*.vsp
*.vspx
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
_NCrunch_*
.*crunch*.local.xml
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Comment the next line if you want to checkin your web deploy settings
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# Windows Azure Build Output
csx/
*.build.csdef
# Windows Store app package directory
AppPackages/
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
# Others
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
bower_components/
orleans.codegen.cs
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
*.mdf
*.ldf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
# Microsoft Fakes
FakesAssemblies/
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
@@ -0,0 +1,32 @@
using System;
using System.Xml;
using System.ServiceModel;
using Roblox.Grid.Rcc;
namespace Roblox.Grid.Common
{
public class GridServiceUtils
{
static GridServiceUtils()
{
binding.MaxReceivedMessageSize = int.MaxValue;
binding.SendTimeout = TimeSpan.FromMinutes(5);
binding.ReceiveTimeout = TimeSpan.FromMinutes(5);
binding.ReaderQuotas = new XmlDictionaryReaderQuotas();
binding.ReaderQuotas.MaxStringContentLength = int.MaxValue;
}
public static RCCServiceSoap GetService(string Address) => GetService(Address, 64989);
public static RCCServiceSoap GetService(string Address, int port)
{
if (Address == null) return null;
return new RCCServiceSoap
{
Url = "http://" + Address + ":" + port.ToString()
};
}
private static readonly BasicHttpBinding binding = new BasicHttpBinding();
}
}
@@ -0,0 +1,95 @@
using System;
using Roblox.Grid.Rcc;
namespace Roblox.Grid
{
public class Lua
{
public static ScriptExecution NewScript(string name, string script) => NewScript(name, script, NewArgs());
public static ScriptExecution NewScript(string name, string script, params object[] args) => NewScript(name, script, NewArgs(args));
public static ScriptExecution NewScript(string name, string script, LuaValue[] args) => new ScriptExecution
{
name = name,
script = script,
arguments = args ?? NewArgs()
};
public static string ToString(LuaValue[] result)
{
string str = null;
foreach (var value in result)
{
if (string.IsNullOrEmpty(str)) str = value.value;
else str = str + ", " + value.value;
}
return str;
}
public static void SetArg(LuaValue[] args, int index, object value)
{
var luaValue = new LuaValue();
if (value is int || value is float || value is double || value is long || value is decimal || value is short || value is ushort || value is uint || value is ulong)
{
luaValue.type = LuaType.LUA_TNUMBER;
luaValue.value = value.ToString();
}
else if (value is string)
{
luaValue.type = LuaType.LUA_TSTRING;
luaValue.value = value.ToString();
}
else if (value is bool boolean)
{
luaValue.type = LuaType.LUA_TBOOLEAN;
luaValue.value = boolean ? "true" : "false";
}
else if (value == null)
{
luaValue.type = LuaType.LUA_TNIL;
luaValue.value = string.Empty;
}
else
{
if (!(value is LuaValue[])) throw new ArgumentException("Unsupported Lua argument type " + value.GetType()?.ToString());
luaValue.type = LuaType.LUA_TTABLE;
luaValue.table = value as LuaValue[];
}
args[index] = luaValue;
}
private static object ConvertLua(LuaValue luaValue)
{
switch (luaValue.type)
{
case LuaType.LUA_TBOOLEAN:
return Convert.ToBoolean(luaValue.value);
case LuaType.LUA_TNUMBER:
return Convert.ToDouble(luaValue.value);
case LuaType.LUA_TSTRING:
return luaValue.value;
case LuaType.LUA_TTABLE:
return Lua.GetValues(luaValue.table);
}
return null;
}
public static LuaValue[] NewArgs(params object[] args)
{
var newArgs = new LuaValue[args.Length];
for (int i = 0; i < args.Length; i++)
SetArg(newArgs, i, args[i]);
return newArgs;
}
public static object[] GetValues(LuaValue[] args)
{
var values = new object[args.Length];
for (int i = 0; i < args.Length; i++)
values[i] = ConvertLua(args[i]);
return values;
}
public static ScriptExecution EmptyScript = NewScript("EmptyScript", "return");
}
}
@@ -0,0 +1,34 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Roblox.Grid.Common")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("ROBLOX Corporation")]
[assembly: AssemblyProduct("Roblox.Grid.Common")]
[assembly: AssemblyCopyright("Copyright © ROBLOX Corporation 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("641e3ab9-0ef1-439d-8f4f-e9ef662eda4e")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{DC7F620E-40D7-41F9-A569-2401AB1B9EAF}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>Roblox.Grid.Common</RootNamespace>
<AssemblyName>Roblox.Grid.Common</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<StartupObject />
</PropertyGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Web.Services" />
<Reference Include="System.XML" />
</ItemGroup>
<ItemGroup>
<Compile Include="GridServiceUtils.cs" />
<Compile Include="Lua.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="RCCServiceSoap.cs" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
</Project>
@@ -0,0 +1,38 @@
using System;
using System.ServiceModel;
using System.Xml;
using Roblox.Grid.Rcc;
namespace Roblox.Grid.Common;
public class GridServiceUtils
{
private static readonly BasicHttpBinding binding;
static GridServiceUtils()
{
binding = new BasicHttpBinding();
binding.MaxReceivedMessageSize = 2147483647L;
binding.SendTimeout = TimeSpan.FromMinutes(5.0);
binding.ReceiveTimeout = TimeSpan.FromMinutes(5.0);
binding.ReaderQuotas = new XmlDictionaryReaderQuotas();
binding.ReaderQuotas.MaxStringContentLength = int.MaxValue;
}
public static RCCServiceSoap GetService(string Address)
{
return GetService(Address, 64989);
}
public static RCCServiceSoap GetService(string Address, int port)
{
if (Address == null)
{
return null;
}
return new RCCServiceSoap
{
Url = "http://" + Address + ":" + port
};
}
}
@@ -0,0 +1,82 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Job : INotifyPropertyChanged
{
private string idField;
private double expirationInSecondsField;
private int categoryField;
private double coresField;
public string id
{
get
{
return idField;
}
set
{
idField = value;
RaisePropertyChanged("id");
}
}
public double expirationInSeconds
{
get
{
return expirationInSecondsField;
}
set
{
expirationInSecondsField = value;
RaisePropertyChanged("expirationInSeconds");
}
}
public int category
{
get
{
return categoryField;
}
set
{
categoryField = value;
RaisePropertyChanged("category");
}
}
public double cores
{
get
{
return coresField;
}
set
{
coresField = value;
RaisePropertyChanged("cores");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,17 @@
using System;
using System.CodeDom.Compiler;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[XmlType(Namespace = "http://roblox.com/")]
public enum LuaType
{
LUA_TNIL,
LUA_TBOOLEAN,
LUA_TNUMBER,
LUA_TSTRING,
LUA_TTABLE
}
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class LuaValue : INotifyPropertyChanged
{
private LuaType typeField;
private string valueField;
private LuaValue[] tableField;
public LuaType type
{
get
{
return typeField;
}
set
{
typeField = value;
RaisePropertyChanged("type");
}
}
public string value
{
get
{
return valueField;
}
set
{
valueField = value;
RaisePropertyChanged("value");
}
}
public LuaValue[] table
{
get
{
return tableField;
}
set
{
tableField = value;
RaisePropertyChanged("table");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,90 @@
using System.CodeDom.Compiler;
using System.Web.Services;
using System.Web.Services.Description;
using System.Web.Services.Protocols;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[GeneratedCode("wsdl", "4.8.3928.0")]
[WebService(Namespace = "http://roblox.com/")]
[WebServiceBinding(Name = "RCCServiceSoap", Namespace = "http://roblox.com/")]
public abstract class RCCServiceSoap : WebService
{
[WebMethod]
[SoapDocumentMethod("http://roblox.com/HelloWorld", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract string HelloWorld();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetVersion", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract string GetVersion();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetStatus", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract Status GetStatus();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/OpenJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("OpenJobResult")]
public abstract LuaValue[] OpenJob(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/OpenJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract LuaValue[] OpenJobEx(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/RenewLease", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract double RenewLease(string jobID, double expirationInSeconds);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/Execute", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("ExecuteResult", IsNullable = true)]
public abstract LuaValue[] Execute(string jobID, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/ExecuteEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract LuaValue[] ExecuteEx(string jobID, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract void CloseJob(string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/BatchJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("BatchJobResult", IsNullable = true)]
public abstract LuaValue[] BatchJob(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/BatchJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract LuaValue[] BatchJobEx(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetExpiration", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract double GetExpiration(string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("GetAllJobsResult", IsNullable = true)]
public abstract Job[] GetAllJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetAllJobsEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract Job[] GetAllJobsEx();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseExpiredJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract int CloseExpiredJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract int CloseAllJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/Diag", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("DiagResult", IsNullable = true)]
public abstract LuaValue[] Diag(int type, string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/DiagEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public abstract LuaValue[] DiagEx(int type, string jobID);
}
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class ScriptExecution : INotifyPropertyChanged
{
private string nameField;
private string scriptField;
private LuaValue[] argumentsField;
public string name
{
get
{
return nameField;
}
set
{
nameField = value;
RaisePropertyChanged("name");
}
}
public string script
{
get
{
return scriptField;
}
set
{
scriptField = value;
RaisePropertyChanged("script");
}
}
public LuaValue[] arguments
{
get
{
return argumentsField;
}
set
{
argumentsField = value;
RaisePropertyChanged("arguments");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,52 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.Server;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Status : INotifyPropertyChanged
{
private string versionField;
private int environmentCountField;
public string version
{
get
{
return versionField;
}
set
{
versionField = value;
RaisePropertyChanged("version");
}
}
public int environmentCount
{
get
{
return environmentCountField;
}
set
{
environmentCountField = value;
RaisePropertyChanged("environmentCount");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,89 @@
using System.CodeDom.Compiler;
using System.Web.Services;
using System.Web.Services.Description;
using System.Web.Services.Protocols;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[GeneratedCode("wsdl", "4.8.3928.0")]
[WebServiceBinding(Name = "RCCServiceSoap", Namespace = "http://roblox.com/")]
public interface IRCCServiceSoap
{
[WebMethod]
[SoapDocumentMethod("http://roblox.com/HelloWorld", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
string HelloWorld();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetVersion", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
string GetVersion();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetStatus", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
Status GetStatus();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/OpenJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("OpenJobResult")]
LuaValue[] OpenJob(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/OpenJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
LuaValue[] OpenJobEx(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/RenewLease", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
double RenewLease(string jobID, double expirationInSeconds);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/Execute", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("ExecuteResult", IsNullable = true)]
LuaValue[] Execute(string jobID, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/ExecuteEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
LuaValue[] ExecuteEx(string jobID, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
void CloseJob(string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/BatchJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("BatchJobResult", IsNullable = true)]
LuaValue[] BatchJob(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/BatchJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
LuaValue[] BatchJobEx(Job job, ScriptExecution script);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetExpiration", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
double GetExpiration(string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("GetAllJobsResult", IsNullable = true)]
Job[] GetAllJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/GetAllJobsEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
Job[] GetAllJobsEx();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseExpiredJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
int CloseExpiredJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/CloseAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
int CloseAllJobs();
[WebMethod]
[SoapDocumentMethod("http://roblox.com/Diag", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("DiagResult", IsNullable = true)]
LuaValue[] Diag(int type, string jobID);
[WebMethod]
[SoapDocumentMethod("http://roblox.com/DiagEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
LuaValue[] DiagEx(int type, string jobID);
}
@@ -0,0 +1,82 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Job : INotifyPropertyChanged
{
private string idField;
private double expirationInSecondsField;
private int categoryField;
private double coresField;
public string id
{
get
{
return idField;
}
set
{
idField = value;
RaisePropertyChanged("id");
}
}
public double expirationInSeconds
{
get
{
return expirationInSecondsField;
}
set
{
expirationInSecondsField = value;
RaisePropertyChanged("expirationInSeconds");
}
}
public int category
{
get
{
return categoryField;
}
set
{
categoryField = value;
RaisePropertyChanged("category");
}
}
public double cores
{
get
{
return coresField;
}
set
{
coresField = value;
RaisePropertyChanged("cores");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,17 @@
using System;
using System.CodeDom.Compiler;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[XmlType(Namespace = "http://roblox.com/")]
public enum LuaType
{
LUA_TNIL,
LUA_TBOOLEAN,
LUA_TNUMBER,
LUA_TSTRING,
LUA_TTABLE
}
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class LuaValue : INotifyPropertyChanged
{
private LuaType typeField;
private string valueField;
private LuaValue[] tableField;
public LuaType type
{
get
{
return typeField;
}
set
{
typeField = value;
RaisePropertyChanged("type");
}
}
public string value
{
get
{
return valueField;
}
set
{
valueField = value;
RaisePropertyChanged("value");
}
}
public LuaValue[] table
{
get
{
return tableField;
}
set
{
tableField = value;
RaisePropertyChanged("table");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class ScriptExecution : INotifyPropertyChanged
{
private string nameField;
private string scriptField;
private LuaValue[] argumentsField;
public string name
{
get
{
return nameField;
}
set
{
nameField = value;
RaisePropertyChanged("name");
}
}
public string script
{
get
{
return scriptField;
}
set
{
scriptField = value;
RaisePropertyChanged("script");
}
}
public LuaValue[] arguments
{
get
{
return argumentsField;
}
set
{
argumentsField = value;
RaisePropertyChanged("arguments");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,52 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc.ServerInterface;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Status : INotifyPropertyChanged
{
private string versionField;
private int environmentCountField;
public string version
{
get
{
return versionField;
}
set
{
versionField = value;
RaisePropertyChanged("version");
}
}
public int environmentCount
{
get
{
return environmentCountField;
}
set
{
environmentCountField = value;
RaisePropertyChanged("environmentCount");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class BatchJobCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal BatchJobCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void BatchJobCompletedEventHandler(object sender, BatchJobCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class BatchJobExCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal BatchJobExCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void BatchJobExCompletedEventHandler(object sender, BatchJobExCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class CloseAllJobsCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public int Result
{
get
{
RaiseExceptionIfNecessary();
return (int)results[0];
}
}
internal CloseAllJobsCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void CloseAllJobsCompletedEventHandler(object sender, CloseAllJobsCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class CloseExpiredJobsCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public int Result
{
get
{
RaiseExceptionIfNecessary();
return (int)results[0];
}
}
internal CloseExpiredJobsCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void CloseExpiredJobsCompletedEventHandler(object sender, CloseExpiredJobsCompletedEventArgs e);
@@ -0,0 +1,7 @@
using System.CodeDom.Compiler;
using System.ComponentModel;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void CloseJobCompletedEventHandler(object sender, AsyncCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class DiagCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal DiagCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void DiagCompletedEventHandler(object sender, DiagCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class DiagExCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal DiagExCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void DiagExCompletedEventHandler(object sender, DiagExCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class ExecuteCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal ExecuteCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void ExecuteCompletedEventHandler(object sender, ExecuteCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class ExecuteExCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal ExecuteExCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void ExecuteExCompletedEventHandler(object sender, ExecuteExCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class GetAllJobsCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public Job[] Result
{
get
{
RaiseExceptionIfNecessary();
return (Job[])results[0];
}
}
internal GetAllJobsCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void GetAllJobsCompletedEventHandler(object sender, GetAllJobsCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class GetAllJobsExCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public Job[] Result
{
get
{
RaiseExceptionIfNecessary();
return (Job[])results[0];
}
}
internal GetAllJobsExCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void GetAllJobsExCompletedEventHandler(object sender, GetAllJobsExCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class GetExpirationCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public double Result
{
get
{
RaiseExceptionIfNecessary();
return (double)results[0];
}
}
internal GetExpirationCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void GetExpirationCompletedEventHandler(object sender, GetExpirationCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class GetStatusCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public Status Result
{
get
{
RaiseExceptionIfNecessary();
return (Status)results[0];
}
}
internal GetStatusCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void GetStatusCompletedEventHandler(object sender, GetStatusCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class GetVersionCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public string Result
{
get
{
RaiseExceptionIfNecessary();
return (string)results[0];
}
}
internal GetVersionCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void GetVersionCompletedEventHandler(object sender, GetVersionCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class HelloWorldCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public string Result
{
get
{
RaiseExceptionIfNecessary();
return (string)results[0];
}
}
internal HelloWorldCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void HelloWorldCompletedEventHandler(object sender, HelloWorldCompletedEventArgs e);
@@ -0,0 +1,82 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Job : INotifyPropertyChanged
{
private string idField;
private double expirationInSecondsField;
private int categoryField;
private double coresField;
public string id
{
get
{
return idField;
}
set
{
idField = value;
RaisePropertyChanged("id");
}
}
public double expirationInSeconds
{
get
{
return expirationInSecondsField;
}
set
{
expirationInSecondsField = value;
RaisePropertyChanged("expirationInSeconds");
}
}
public int category
{
get
{
return categoryField;
}
set
{
categoryField = value;
RaisePropertyChanged("category");
}
}
public double cores
{
get
{
return coresField;
}
set
{
coresField = value;
RaisePropertyChanged("cores");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,17 @@
using System;
using System.CodeDom.Compiler;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[XmlType(Namespace = "http://roblox.com/")]
public enum LuaType
{
LUA_TNIL,
LUA_TBOOLEAN,
LUA_TNUMBER,
LUA_TSTRING,
LUA_TTABLE
}
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class LuaValue : INotifyPropertyChanged
{
private LuaType typeField;
private string valueField;
private LuaValue[] tableField;
public LuaType type
{
get
{
return typeField;
}
set
{
typeField = value;
RaisePropertyChanged("type");
}
}
public string value
{
get
{
return valueField;
}
set
{
valueField = value;
RaisePropertyChanged("value");
}
}
public LuaValue[] table
{
get
{
return tableField;
}
set
{
tableField = value;
RaisePropertyChanged("table");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class OpenJobCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal OpenJobCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void OpenJobCompletedEventHandler(object sender, OpenJobCompletedEventArgs e);
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class OpenJobExCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public LuaValue[] Result
{
get
{
RaiseExceptionIfNecessary();
return (LuaValue[])results[0];
}
}
internal OpenJobExCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void OpenJobExCompletedEventHandler(object sender, OpenJobExCompletedEventArgs e);
@@ -0,0 +1,802 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Threading;
using System.Web.Services;
using System.Web.Services.Description;
using System.Web.Services.Protocols;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[WebServiceBinding(Name = "RCCServiceSoap", Namespace = "http://roblox.com/")]
public class RCCServiceSoap : SoapHttpClientProtocol
{
private SendOrPostCallback HelloWorldOperationCompleted;
private SendOrPostCallback GetVersionOperationCompleted;
private SendOrPostCallback GetStatusOperationCompleted;
private SendOrPostCallback OpenJobOperationCompleted;
private SendOrPostCallback OpenJobExOperationCompleted;
private SendOrPostCallback RenewLeaseOperationCompleted;
private SendOrPostCallback ExecuteOperationCompleted;
private SendOrPostCallback ExecuteExOperationCompleted;
private SendOrPostCallback CloseJobOperationCompleted;
private SendOrPostCallback BatchJobOperationCompleted;
private SendOrPostCallback BatchJobExOperationCompleted;
private SendOrPostCallback GetExpirationOperationCompleted;
private SendOrPostCallback GetAllJobsOperationCompleted;
private SendOrPostCallback GetAllJobsExOperationCompleted;
private SendOrPostCallback CloseExpiredJobsOperationCompleted;
private SendOrPostCallback CloseAllJobsOperationCompleted;
private SendOrPostCallback DiagOperationCompleted;
private SendOrPostCallback DiagExOperationCompleted;
public event HelloWorldCompletedEventHandler HelloWorldCompleted;
public event GetVersionCompletedEventHandler GetVersionCompleted;
public event GetStatusCompletedEventHandler GetStatusCompleted;
public event OpenJobCompletedEventHandler OpenJobCompleted;
public event OpenJobExCompletedEventHandler OpenJobExCompleted;
public event RenewLeaseCompletedEventHandler RenewLeaseCompleted;
public event ExecuteCompletedEventHandler ExecuteCompleted;
public event ExecuteExCompletedEventHandler ExecuteExCompleted;
public event CloseJobCompletedEventHandler CloseJobCompleted;
public event BatchJobCompletedEventHandler BatchJobCompleted;
public event BatchJobExCompletedEventHandler BatchJobExCompleted;
public event GetExpirationCompletedEventHandler GetExpirationCompleted;
public event GetAllJobsCompletedEventHandler GetAllJobsCompleted;
public event GetAllJobsExCompletedEventHandler GetAllJobsExCompleted;
public event CloseExpiredJobsCompletedEventHandler CloseExpiredJobsCompleted;
public event CloseAllJobsCompletedEventHandler CloseAllJobsCompleted;
public event DiagCompletedEventHandler DiagCompleted;
public event DiagExCompletedEventHandler DiagExCompleted;
[SoapDocumentMethod("http://roblox.com/HelloWorld", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public string HelloWorld()
{
return (string)Invoke("HelloWorld", new object[0])[0];
}
public IAsyncResult BeginHelloWorld(AsyncCallback callback, object asyncState)
{
return BeginInvoke("HelloWorld", new object[0], callback, asyncState);
}
public string EndHelloWorld(IAsyncResult asyncResult)
{
return (string)EndInvoke(asyncResult)[0];
}
public void HelloWorldAsync()
{
HelloWorldAsync(null);
}
public void HelloWorldAsync(object userState)
{
if (HelloWorldOperationCompleted == null)
{
HelloWorldOperationCompleted = OnHelloWorldOperationCompleted;
}
InvokeAsync("HelloWorld", new object[0], HelloWorldOperationCompleted, userState);
}
private void OnHelloWorldOperationCompleted(object arg)
{
if (this.HelloWorldCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.HelloWorldCompleted(this, new HelloWorldCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/GetVersion", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public string GetVersion()
{
return (string)Invoke("GetVersion", new object[0])[0];
}
public IAsyncResult BeginGetVersion(AsyncCallback callback, object asyncState)
{
return BeginInvoke("GetVersion", new object[0], callback, asyncState);
}
public string EndGetVersion(IAsyncResult asyncResult)
{
return (string)EndInvoke(asyncResult)[0];
}
public void GetVersionAsync()
{
GetVersionAsync(null);
}
public void GetVersionAsync(object userState)
{
if (GetVersionOperationCompleted == null)
{
GetVersionOperationCompleted = OnGetVersionOperationCompleted;
}
InvokeAsync("GetVersion", new object[0], GetVersionOperationCompleted, userState);
}
private void OnGetVersionOperationCompleted(object arg)
{
if (this.GetVersionCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.GetVersionCompleted(this, new GetVersionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/GetStatus", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public Status GetStatus()
{
return (Status)Invoke("GetStatus", new object[0])[0];
}
public IAsyncResult BeginGetStatus(AsyncCallback callback, object asyncState)
{
return BeginInvoke("GetStatus", new object[0], callback, asyncState);
}
public Status EndGetStatus(IAsyncResult asyncResult)
{
return (Status)EndInvoke(asyncResult)[0];
}
public void GetStatusAsync()
{
GetStatusAsync(null);
}
public void GetStatusAsync(object userState)
{
if (GetStatusOperationCompleted == null)
{
GetStatusOperationCompleted = OnGetStatusOperationCompleted;
}
InvokeAsync("GetStatus", new object[0], GetStatusOperationCompleted, userState);
}
private void OnGetStatusOperationCompleted(object arg)
{
if (this.GetStatusCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.GetStatusCompleted(this, new GetStatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/OpenJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("OpenJobResult")]
public LuaValue[] OpenJob(Job job, ScriptExecution script)
{
return (LuaValue[])Invoke("OpenJob", new object[2] { job, script })[0];
}
public IAsyncResult BeginOpenJob(Job job, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("OpenJob", new object[2] { job, script }, callback, asyncState);
}
public LuaValue[] EndOpenJob(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void OpenJobAsync(Job job, ScriptExecution script)
{
OpenJobAsync(job, script, null);
}
public void OpenJobAsync(Job job, ScriptExecution script, object userState)
{
if (OpenJobOperationCompleted == null)
{
OpenJobOperationCompleted = OnOpenJobOperationCompleted;
}
InvokeAsync("OpenJob", new object[2] { job, script }, OpenJobOperationCompleted, userState);
}
private void OnOpenJobOperationCompleted(object arg)
{
if (this.OpenJobCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.OpenJobCompleted(this, new OpenJobCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/OpenJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public LuaValue[] OpenJobEx(Job job, ScriptExecution script)
{
return (LuaValue[])Invoke("OpenJobEx", new object[2] { job, script })[0];
}
public IAsyncResult BeginOpenJobEx(Job job, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("OpenJobEx", new object[2] { job, script }, callback, asyncState);
}
public LuaValue[] EndOpenJobEx(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void OpenJobExAsync(Job job, ScriptExecution script)
{
OpenJobExAsync(job, script, null);
}
public void OpenJobExAsync(Job job, ScriptExecution script, object userState)
{
if (OpenJobExOperationCompleted == null)
{
OpenJobExOperationCompleted = OnOpenJobExOperationCompleted;
}
InvokeAsync("OpenJobEx", new object[2] { job, script }, OpenJobExOperationCompleted, userState);
}
private void OnOpenJobExOperationCompleted(object arg)
{
if (this.OpenJobExCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.OpenJobExCompleted(this, new OpenJobExCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/RenewLease", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public double RenewLease(string jobID, double expirationInSeconds)
{
return (double)Invoke("RenewLease", new object[2] { jobID, expirationInSeconds })[0];
}
public IAsyncResult BeginRenewLease(string jobID, double expirationInSeconds, AsyncCallback callback, object asyncState)
{
return BeginInvoke("RenewLease", new object[2] { jobID, expirationInSeconds }, callback, asyncState);
}
public double EndRenewLease(IAsyncResult asyncResult)
{
return (double)EndInvoke(asyncResult)[0];
}
public void RenewLeaseAsync(string jobID, double expirationInSeconds)
{
RenewLeaseAsync(jobID, expirationInSeconds, null);
}
public void RenewLeaseAsync(string jobID, double expirationInSeconds, object userState)
{
if (RenewLeaseOperationCompleted == null)
{
RenewLeaseOperationCompleted = OnRenewLeaseOperationCompleted;
}
InvokeAsync("RenewLease", new object[2] { jobID, expirationInSeconds }, RenewLeaseOperationCompleted, userState);
}
private void OnRenewLeaseOperationCompleted(object arg)
{
if (this.RenewLeaseCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.RenewLeaseCompleted(this, new RenewLeaseCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/Execute", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("ExecuteResult", IsNullable = true)]
public LuaValue[] Execute(string jobID, ScriptExecution script)
{
return (LuaValue[])Invoke("Execute", new object[2] { jobID, script })[0];
}
public IAsyncResult BeginExecute(string jobID, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("Execute", new object[2] { jobID, script }, callback, asyncState);
}
public LuaValue[] EndExecute(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void ExecuteAsync(string jobID, ScriptExecution script)
{
ExecuteAsync(jobID, script, null);
}
public void ExecuteAsync(string jobID, ScriptExecution script, object userState)
{
if (ExecuteOperationCompleted == null)
{
ExecuteOperationCompleted = OnExecuteOperationCompleted;
}
InvokeAsync("Execute", new object[2] { jobID, script }, ExecuteOperationCompleted, userState);
}
private void OnExecuteOperationCompleted(object arg)
{
if (this.ExecuteCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.ExecuteCompleted(this, new ExecuteCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/ExecuteEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public LuaValue[] ExecuteEx(string jobID, ScriptExecution script)
{
return (LuaValue[])Invoke("ExecuteEx", new object[2] { jobID, script })[0];
}
public IAsyncResult BeginExecuteEx(string jobID, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("ExecuteEx", new object[2] { jobID, script }, callback, asyncState);
}
public LuaValue[] EndExecuteEx(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void ExecuteExAsync(string jobID, ScriptExecution script)
{
ExecuteExAsync(jobID, script, null);
}
public void ExecuteExAsync(string jobID, ScriptExecution script, object userState)
{
if (ExecuteExOperationCompleted == null)
{
ExecuteExOperationCompleted = OnExecuteExOperationCompleted;
}
InvokeAsync("ExecuteEx", new object[2] { jobID, script }, ExecuteExOperationCompleted, userState);
}
private void OnExecuteExOperationCompleted(object arg)
{
if (this.ExecuteExCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.ExecuteExCompleted(this, new ExecuteExCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/CloseJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public void CloseJob(string jobID)
{
Invoke("CloseJob", new object[1] { jobID });
}
public IAsyncResult BeginCloseJob(string jobID, AsyncCallback callback, object asyncState)
{
return BeginInvoke("CloseJob", new object[1] { jobID }, callback, asyncState);
}
public void EndCloseJob(IAsyncResult asyncResult)
{
EndInvoke(asyncResult);
}
public void CloseJobAsync(string jobID)
{
CloseJobAsync(jobID, null);
}
public void CloseJobAsync(string jobID, object userState)
{
if (CloseJobOperationCompleted == null)
{
CloseJobOperationCompleted = OnCloseJobOperationCompleted;
}
InvokeAsync("CloseJob", new object[1] { jobID }, CloseJobOperationCompleted, userState);
}
private void OnCloseJobOperationCompleted(object arg)
{
if (this.CloseJobCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.CloseJobCompleted(this, new AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/BatchJob", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("BatchJobResult", IsNullable = true)]
public LuaValue[] BatchJob(Job job, ScriptExecution script)
{
return (LuaValue[])Invoke("BatchJob", new object[2] { job, script })[0];
}
public IAsyncResult BeginBatchJob(Job job, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("BatchJob", new object[2] { job, script }, callback, asyncState);
}
public LuaValue[] EndBatchJob(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void BatchJobAsync(Job job, ScriptExecution script)
{
BatchJobAsync(job, script, null);
}
public void BatchJobAsync(Job job, ScriptExecution script, object userState)
{
if (BatchJobOperationCompleted == null)
{
BatchJobOperationCompleted = OnBatchJobOperationCompleted;
}
InvokeAsync("BatchJob", new object[2] { job, script }, BatchJobOperationCompleted, userState);
}
private void OnBatchJobOperationCompleted(object arg)
{
if (this.BatchJobCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.BatchJobCompleted(this, new BatchJobCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/BatchJobEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public LuaValue[] BatchJobEx(Job job, ScriptExecution script)
{
return (LuaValue[])Invoke("BatchJobEx", new object[2] { job, script })[0];
}
public IAsyncResult BeginBatchJobEx(Job job, ScriptExecution script, AsyncCallback callback, object asyncState)
{
return BeginInvoke("BatchJobEx", new object[2] { job, script }, callback, asyncState);
}
public LuaValue[] EndBatchJobEx(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void BatchJobExAsync(Job job, ScriptExecution script)
{
BatchJobExAsync(job, script, null);
}
public void BatchJobExAsync(Job job, ScriptExecution script, object userState)
{
if (BatchJobExOperationCompleted == null)
{
BatchJobExOperationCompleted = OnBatchJobExOperationCompleted;
}
InvokeAsync("BatchJobEx", new object[2] { job, script }, BatchJobExOperationCompleted, userState);
}
private void OnBatchJobExOperationCompleted(object arg)
{
if (this.BatchJobExCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.BatchJobExCompleted(this, new BatchJobExCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/GetExpiration", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public double GetExpiration(string jobID)
{
return (double)Invoke("GetExpiration", new object[1] { jobID })[0];
}
public IAsyncResult BeginGetExpiration(string jobID, AsyncCallback callback, object asyncState)
{
return BeginInvoke("GetExpiration", new object[1] { jobID }, callback, asyncState);
}
public double EndGetExpiration(IAsyncResult asyncResult)
{
return (double)EndInvoke(asyncResult)[0];
}
public void GetExpirationAsync(string jobID)
{
GetExpirationAsync(jobID, null);
}
public void GetExpirationAsync(string jobID, object userState)
{
if (GetExpirationOperationCompleted == null)
{
GetExpirationOperationCompleted = OnGetExpirationOperationCompleted;
}
InvokeAsync("GetExpiration", new object[1] { jobID }, GetExpirationOperationCompleted, userState);
}
private void OnGetExpirationOperationCompleted(object arg)
{
if (this.GetExpirationCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.GetExpirationCompleted(this, new GetExpirationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/GetAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("GetAllJobsResult", IsNullable = true)]
public Job[] GetAllJobs()
{
return (Job[])Invoke("GetAllJobs", new object[0])[0];
}
public IAsyncResult BeginGetAllJobs(AsyncCallback callback, object asyncState)
{
return BeginInvoke("GetAllJobs", new object[0], callback, asyncState);
}
public Job[] EndGetAllJobs(IAsyncResult asyncResult)
{
return (Job[])EndInvoke(asyncResult)[0];
}
public void GetAllJobsAsync()
{
GetAllJobsAsync(null);
}
public void GetAllJobsAsync(object userState)
{
if (GetAllJobsOperationCompleted == null)
{
GetAllJobsOperationCompleted = OnGetAllJobsOperationCompleted;
}
InvokeAsync("GetAllJobs", new object[0], GetAllJobsOperationCompleted, userState);
}
private void OnGetAllJobsOperationCompleted(object arg)
{
if (this.GetAllJobsCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.GetAllJobsCompleted(this, new GetAllJobsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/GetAllJobsEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public Job[] GetAllJobsEx()
{
return (Job[])Invoke("GetAllJobsEx", new object[0])[0];
}
public IAsyncResult BeginGetAllJobsEx(AsyncCallback callback, object asyncState)
{
return BeginInvoke("GetAllJobsEx", new object[0], callback, asyncState);
}
public Job[] EndGetAllJobsEx(IAsyncResult asyncResult)
{
return (Job[])EndInvoke(asyncResult)[0];
}
public void GetAllJobsExAsync()
{
GetAllJobsExAsync(null);
}
public void GetAllJobsExAsync(object userState)
{
if (GetAllJobsExOperationCompleted == null)
{
GetAllJobsExOperationCompleted = OnGetAllJobsExOperationCompleted;
}
InvokeAsync("GetAllJobsEx", new object[0], GetAllJobsExOperationCompleted, userState);
}
private void OnGetAllJobsExOperationCompleted(object arg)
{
if (this.GetAllJobsExCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.GetAllJobsExCompleted(this, new GetAllJobsExCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/CloseExpiredJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public int CloseExpiredJobs()
{
return (int)Invoke("CloseExpiredJobs", new object[0])[0];
}
public IAsyncResult BeginCloseExpiredJobs(AsyncCallback callback, object asyncState)
{
return BeginInvoke("CloseExpiredJobs", new object[0], callback, asyncState);
}
public int EndCloseExpiredJobs(IAsyncResult asyncResult)
{
return (int)EndInvoke(asyncResult)[0];
}
public void CloseExpiredJobsAsync()
{
CloseExpiredJobsAsync(null);
}
public void CloseExpiredJobsAsync(object userState)
{
if (CloseExpiredJobsOperationCompleted == null)
{
CloseExpiredJobsOperationCompleted = OnCloseExpiredJobsOperationCompleted;
}
InvokeAsync("CloseExpiredJobs", new object[0], CloseExpiredJobsOperationCompleted, userState);
}
private void OnCloseExpiredJobsOperationCompleted(object arg)
{
if (this.CloseExpiredJobsCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.CloseExpiredJobsCompleted(this, new CloseExpiredJobsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/CloseAllJobs", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public int CloseAllJobs()
{
return (int)Invoke("CloseAllJobs", new object[0])[0];
}
public IAsyncResult BeginCloseAllJobs(AsyncCallback callback, object asyncState)
{
return BeginInvoke("CloseAllJobs", new object[0], callback, asyncState);
}
public int EndCloseAllJobs(IAsyncResult asyncResult)
{
return (int)EndInvoke(asyncResult)[0];
}
public void CloseAllJobsAsync()
{
CloseAllJobsAsync(null);
}
public void CloseAllJobsAsync(object userState)
{
if (CloseAllJobsOperationCompleted == null)
{
CloseAllJobsOperationCompleted = OnCloseAllJobsOperationCompleted;
}
InvokeAsync("CloseAllJobs", new object[0], CloseAllJobsOperationCompleted, userState);
}
private void OnCloseAllJobsOperationCompleted(object arg)
{
if (this.CloseAllJobsCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.CloseAllJobsCompleted(this, new CloseAllJobsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/Diag", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[return: XmlElement("DiagResult", IsNullable = true)]
public LuaValue[] Diag(int type, string jobID)
{
return (LuaValue[])Invoke("Diag", new object[2] { type, jobID })[0];
}
public IAsyncResult BeginDiag(int type, string jobID, AsyncCallback callback, object asyncState)
{
return BeginInvoke("Diag", new object[2] { type, jobID }, callback, asyncState);
}
public LuaValue[] EndDiag(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void DiagAsync(int type, string jobID)
{
DiagAsync(type, jobID, null);
}
public void DiagAsync(int type, string jobID, object userState)
{
if (DiagOperationCompleted == null)
{
DiagOperationCompleted = OnDiagOperationCompleted;
}
InvokeAsync("Diag", new object[2] { type, jobID }, DiagOperationCompleted, userState);
}
private void OnDiagOperationCompleted(object arg)
{
if (this.DiagCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.DiagCompleted(this, new DiagCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
[SoapDocumentMethod("http://roblox.com/DiagEx", RequestNamespace = "http://roblox.com/", ResponseNamespace = "http://roblox.com/", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public LuaValue[] DiagEx(int type, string jobID)
{
return (LuaValue[])Invoke("DiagEx", new object[2] { type, jobID })[0];
}
public IAsyncResult BeginDiagEx(int type, string jobID, AsyncCallback callback, object asyncState)
{
return BeginInvoke("DiagEx", new object[2] { type, jobID }, callback, asyncState);
}
public LuaValue[] EndDiagEx(IAsyncResult asyncResult)
{
return (LuaValue[])EndInvoke(asyncResult)[0];
}
public void DiagExAsync(int type, string jobID)
{
DiagExAsync(type, jobID, null);
}
public void DiagExAsync(int type, string jobID, object userState)
{
if (DiagExOperationCompleted == null)
{
DiagExOperationCompleted = OnDiagExOperationCompleted;
}
InvokeAsync("DiagEx", new object[2] { type, jobID }, DiagExOperationCompleted, userState);
}
private void OnDiagExOperationCompleted(object arg)
{
if (this.DiagExCompleted != null)
{
InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg;
this.DiagExCompleted(this, new DiagExCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
public new void CancelAsync(object userState)
{
base.CancelAsync(userState);
}
}
@@ -0,0 +1,29 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
public class RenewLeaseCompletedEventArgs : AsyncCompletedEventArgs
{
private object[] results;
public double Result
{
get
{
RaiseExceptionIfNecessary();
return (double)results[0];
}
}
internal RenewLeaseCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState)
: base(exception, cancelled, userState)
{
this.results = results;
}
}
@@ -0,0 +1,6 @@
using System.CodeDom.Compiler;
namespace Roblox.Grid.Rcc;
[GeneratedCode("wsdl", "4.8.3928.0")]
public delegate void RenewLeaseCompletedEventHandler(object sender, RenewLeaseCompletedEventArgs e);
@@ -0,0 +1,67 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class ScriptExecution : INotifyPropertyChanged
{
private string nameField;
private string scriptField;
private LuaValue[] argumentsField;
public string name
{
get
{
return nameField;
}
set
{
nameField = value;
RaisePropertyChanged("name");
}
}
public string script
{
get
{
return scriptField;
}
set
{
scriptField = value;
RaisePropertyChanged("script");
}
}
public LuaValue[] arguments
{
get
{
return argumentsField;
}
set
{
argumentsField = value;
RaisePropertyChanged("arguments");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,52 @@
using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
namespace Roblox.Grid.Rcc;
[Serializable]
[GeneratedCode("wsdl", "4.8.3928.0")]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(Namespace = "http://roblox.com/")]
public class Status : INotifyPropertyChanged
{
private string versionField;
private int environmentCountField;
public string version
{
get
{
return versionField;
}
set
{
versionField = value;
RaisePropertyChanged("version");
}
}
public int environmentCount
{
get
{
return environmentCountField;
}
set
{
environmentCountField = value;
RaisePropertyChanged("environmentCount");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
@@ -0,0 +1,105 @@
using System;
using Roblox.Grid.Rcc;
namespace Roblox.Grid;
public class Lua
{
public static ScriptExecution EmptyScript = NewScript("EmptyScript", "return");
public static ScriptExecution NewScript(string name, string script)
{
return NewScript(name, script, NewArgs());
}
public static ScriptExecution NewScript(string name, string script, params object[] args)
{
return NewScript(name, script, NewArgs(args));
}
public static ScriptExecution NewScript(string name, string script, LuaValue[] args)
{
ScriptExecution scriptExecution = new ScriptExecution();
scriptExecution.name = name;
scriptExecution.script = script;
scriptExecution.arguments = args ?? NewArgs();
return scriptExecution;
}
public static string ToString(LuaValue[] result)
{
string str = null;
foreach (LuaValue value in result)
{
str = ((!string.IsNullOrEmpty(str)) ? (str + ", " + value.value) : value.value);
}
return str;
}
public static void SetArg(LuaValue[] args, int index, object value)
{
LuaValue luaValue = new LuaValue();
if (value is int || value is float || value is double || value is long || value is decimal || value is short || value is ushort || value is uint || value is ulong)
{
luaValue.type = LuaType.LUA_TNUMBER;
luaValue.value = value.ToString();
}
else if (value is string)
{
luaValue.type = LuaType.LUA_TSTRING;
luaValue.value = value.ToString();
}
else if (value is bool boolean)
{
luaValue.type = LuaType.LUA_TBOOLEAN;
luaValue.value = (boolean ? "true" : "false");
}
else if (value == null)
{
luaValue.type = LuaType.LUA_TNIL;
luaValue.value = string.Empty;
}
else
{
if (!(value is LuaValue[]))
{
throw new ArgumentException("Unsupported Lua argument type " + value.GetType());
}
luaValue.type = LuaType.LUA_TTABLE;
luaValue.table = value as LuaValue[];
}
args[index] = luaValue;
}
private static object ConvertLua(LuaValue luaValue)
{
return luaValue.type switch
{
LuaType.LUA_TBOOLEAN => Convert.ToBoolean(luaValue.value),
LuaType.LUA_TNUMBER => Convert.ToDouble(luaValue.value),
LuaType.LUA_TSTRING => luaValue.value,
LuaType.LUA_TTABLE => GetValues(luaValue.table),
_ => null,
};
}
public static LuaValue[] NewArgs(params object[] args)
{
LuaValue[] newArgs = new LuaValue[args.Length];
for (int i = 0; i < args.Length; i++)
{
SetArg(newArgs, i, args[i]);
}
return newArgs;
}
public static object[] GetValues(LuaValue[] args)
{
object[] values = new object[args.Length];
for (int i = 0; i < args.Length; i++)
{
values[i] = ConvertLua(args[i]);
}
return values;
}
}
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="RCCServiceSoap">
<readerQuotas maxStringContentLength="131072"/>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:64989" binding="basicHttpBinding" bindingConfiguration="RCCServiceSoap" contract="RCC.RCCServiceSoap" name="RCCServiceSoap"/>
</client>
</system.serviceModel>
<startup><supportedRuntime version="v2.0.50727"/></startup></configuration>