├── assets ├── 1.png └── 2.png ├── thumbnail.png ├── help └── AWS-region.png ├── packages └── repositories.config ├── AutoCADIOUtil ├── AutoCADIOUtil.csproj.user ├── packages.config ├── Service References │ └── AcadIO │ │ ├── Reference.datasvcmap │ │ ├── service.edmx │ │ └── Reference.cs ├── app.config ├── Properties │ └── AssemblyInfo.cs ├── AIO.tt ├── AutoCADIOUtil.csproj ├── GeneralUtilities.cs └── AutoCADIOUtilities.cs ├── LICENSE ├── AutoCADIOUtil.sln ├── .gitignore └── README.md /assets/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Autodesk-Forge/design.automation-.net-library/HEAD/assets/1.png -------------------------------------------------------------------------------- /assets/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Autodesk-Forge/design.automation-.net-library/HEAD/assets/2.png -------------------------------------------------------------------------------- /thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Autodesk-Forge/design.automation-.net-library/HEAD/thumbnail.png -------------------------------------------------------------------------------- /help/AWS-region.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Autodesk-Forge/design.automation-.net-library/HEAD/help/AWS-region.png -------------------------------------------------------------------------------- /packages/repositories.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /AutoCADIOUtil/AutoCADIOUtil.csproj.user: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ShowAllFiles 5 | 6 | -------------------------------------------------------------------------------- /AutoCADIOUtil/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /AutoCADIOUtil/Service References/AcadIO/Reference.datasvcmap: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2017 Autodesk, Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /AutoCADIOUtil/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /AutoCADIOUtil.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 2012 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AutoCADIOUtil", "AutoCADIOUtil\AutoCADIOUtil.csproj", "{E97747E1-F96C-496F-BE5C-E77B5434B1F7}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Debug|Win32 = Debug|Win32 10 | Debug|x64 = Debug|x64 11 | Release|Any CPU = Release|Any CPU 12 | Release|Win32 = Release|Win32 13 | Release|x64 = Release|x64 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Debug|Win32.ActiveCfg = Debug|Any CPU 19 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Debug|x64.ActiveCfg = Debug|Any CPU 20 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Release|Any CPU.Build.0 = Release|Any CPU 22 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Release|Win32.ActiveCfg = Release|Any CPU 23 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7}.Release|x64.ActiveCfg = Release|Any CPU 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | EndGlobal 29 | -------------------------------------------------------------------------------- /AutoCADIOUtil/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AutoCADIOUtil")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("AutoCADIOUtil")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2016")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("750c316e-bc46-42ee-881a-95165b9cd831")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.sln.docstates 8 | 9 | # Build results 10 | 11 | [Dd]ebug/ 12 | [Rr]elease/ 13 | x64/ 14 | build/ 15 | [Bb]in/ 16 | [Oo]bj/ 17 | packages/ 18 | 19 | # Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets 20 | !packages/*/build/ 21 | 22 | # MSTest test Results 23 | [Tt]est[Rr]esult*/ 24 | [Bb]uild[Ll]og.* 25 | 26 | *_i.c 27 | *_p.c 28 | *.ilk 29 | *.meta 30 | *.obj 31 | *.pch 32 | *.pdb 33 | *.pgc 34 | *.pgd 35 | *.rsp 36 | *.sbr 37 | *.tlb 38 | *.tli 39 | *.tlh 40 | *.tmp 41 | *.tmp_proj 42 | *.log 43 | *.vspscc 44 | *.vssscc 45 | .builds 46 | *.pidb 47 | *.log 48 | *.scc 49 | 50 | # Visual C++ cache files 51 | ipch/ 52 | *.aps 53 | *.ncb 54 | *.opensdf 55 | *.sdf 56 | *.cachefile 57 | 58 | # Visual Studio profiler 59 | *.psess 60 | *.vsp 61 | *.vspx 62 | 63 | # Guidance Automation Toolkit 64 | *.gpState 65 | 66 | # ReSharper is a .NET coding add-in 67 | _ReSharper*/ 68 | *.[Rr]e[Ss]harper 69 | 70 | # TeamCity is a build add-in 71 | _TeamCity* 72 | 73 | # DotCover is a Code Coverage Tool 74 | *.dotCover 75 | 76 | # NCrunch 77 | *.ncrunch* 78 | .*crunch*.local.xml 79 | 80 | # Installshield output folder 81 | [Ee]xpress/ 82 | 83 | # DocProject is a documentation generator add-in 84 | DocProject/buildhelp/ 85 | DocProject/Help/*.HxT 86 | DocProject/Help/*.HxC 87 | DocProject/Help/*.hhc 88 | DocProject/Help/*.hhk 89 | DocProject/Help/*.hhp 90 | DocProject/Help/Html2 91 | DocProject/Help/html 92 | 93 | # Click-Once directory 94 | publish/ 95 | 96 | # Publish Web Output 97 | *.Publish.xml 98 | 99 | # NuGet Packages Directory 100 | ## TODO: If you have NuGet Package Restore enabled, uncomment the next line 101 | #packages/ 102 | 103 | # Windows Azure Build Output 104 | csx 105 | *.build.csdef 106 | 107 | # Windows Store app package directory 108 | AppPackages/ 109 | 110 | # Others 111 | sql/ 112 | *.Cache 113 | ClientBin/ 114 | [Ss]tyle[Cc]op.* 115 | ~$* 116 | *~ 117 | *.dbmdl 118 | *.[Pp]ublish.xml 119 | *.pfx 120 | *.publishsettings 121 | 122 | # RIA/Silverlight projects 123 | Generated_Code/ 124 | 125 | # Backup & report files from converting an old project file to a newer 126 | # Visual Studio version. Backup files are not needed, because we have git ;-) 127 | _UpgradeReport_Files/ 128 | Backup*/ 129 | UpgradeLog*.XML 130 | UpgradeLog*.htm 131 | 132 | # SQL Server files 133 | App_Data/*.mdf 134 | App_Data/*.ldf 135 | 136 | 137 | #LightSwitch generated files 138 | GeneratedArtifacts/ 139 | _Pvt_Extensions/ 140 | ModelManifest.xml 141 | 142 | # ========================= 143 | # Windows detritus 144 | # ========================= 145 | 146 | # Windows image file caches 147 | Thumbs.db 148 | ehthumbs.db 149 | 150 | # Folder config file 151 | Desktop.ini 152 | 153 | # Recycle Bin used on file shares 154 | $RECYCLE.BIN/ 155 | 156 | # Mac desktop service store files 157 | .DS_Store 158 | .vs/ 159 | -------------------------------------------------------------------------------- /AutoCADIOUtil/AIO.tt: -------------------------------------------------------------------------------- 1 | <#@ include file="AIO.ttinclude" #> 2 | <#+ 3 | public static class Configuration 4 | { 5 | // The URI of the metadata document. The value must be set to a valid service document URI or a local file path 6 | // eg : "http://services.odata.org/V4/OData/OData.svc/", "File:///C:/Odata.edmx", or @"C:\Odata.edmx" 7 | // ### Notice ### If the OData service requires authentication for accessing the metadata document, the value of 8 | // MetadataDocumentUri has to be set to a local file path, or the client code generation process will fail. 9 | public const string MetadataDocumentUri = "https://developer.api.autodesk.com/autocad.io/us-east/v2/"; 10 | 11 | // The use of DataServiceCollection enables entity and property tracking. The value must be set to true or false. 12 | public const bool UseDataServiceCollection = true; 13 | 14 | // The namespace of the client code generated. It replaces the original namespace in the metadata document, 15 | // unless the model has several namespaces. 16 | public const string NamespacePrefix = "AIO"; 17 | 18 | // The target language of the generated client code. The value must be set to "CSharp" or "VB". 19 | public const string TargetLanguage = "CSharp"; 20 | 21 | // This flag indicates whether to enable naming alias. The value must be set to true or false. 22 | public const bool EnableNamingAlias = true; 23 | 24 | // This flag indicates whether to ignore unexpected elements and attributes in the metadata document and generate 25 | // the client code if any. The value must be set to true or false. 26 | public const bool IgnoreUnexpectedElementsAndAttributes = true; 27 | } 28 | 29 | public static class Customization 30 | { 31 | /// 32 | /// Changes the text to use upper camel case, which upper case for the first character. 33 | /// 34 | /// Text to convert. 35 | /// The converted text in upper camel case 36 | internal static string CustomizeNaming(string text) 37 | { 38 | if (string.IsNullOrEmpty(text)) 39 | { 40 | return text; 41 | } 42 | 43 | if (text.Length == 1) 44 | { 45 | return Char.ToUpperInvariant(text[0]).ToString(CultureInfo.InvariantCulture); 46 | } 47 | 48 | return Char.ToUpperInvariant(text[0]) + text.Substring(1); 49 | } 50 | 51 | /// 52 | /// Changes the namespace to use upper camel case, which upper case for the first character of all segments. 53 | /// 54 | /// Namespace to convert. 55 | /// The converted namespace in upper camel case 56 | internal static string CustomizeNamespace(string fullNamespace) 57 | { 58 | if (string.IsNullOrEmpty(fullNamespace)) 59 | { 60 | return fullNamespace; 61 | } 62 | 63 | string[] segs = fullNamespace.Split('.'); 64 | string upperNamespace = string.Empty; 65 | int n = segs.Length; 66 | for (int i = 0; i < n; ++i) 67 | { 68 | upperNamespace += Customization.CustomizeNaming(segs[i]); 69 | upperNamespace += (i == n - 1 ? string.Empty : "."); 70 | } 71 | 72 | return upperNamespace; 73 | } 74 | } 75 | #> 76 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Design Automation .NET Library 2 | ======================== 3 | (Formely AutoCAD I/O) 4 | 5 | [![.net](https://img.shields.io/badge/.net-4.5-green.svg)](http://www.microsoft.com/en-us/download/details.aspx?id=30653) 6 | [![odata](https://img.shields.io/badge/odata-4.0-yellow.svg)](http://www.odata.org/documentation/) 7 | [![Design Automation](https://img.shields.io/badge/Design%20Automation-v2-green.svg)](http://developer.autodesk.com/) 8 | [![visual studio](https://img.shields.io/badge/visual%20studio-2015%2F2017-yellowgreen.svg)](https://www.visualstudio.com/) 9 | [![License](http://img.shields.io/:license-mit-red.svg)](http://opensource.org/licenses/MIT) 10 | 11 | ## Description 12 | This is an auxiliary library with helper methods to perform tasks related to Design Automation. It packs the workflows of creating activity, submitting workitem, deleting activity, updating activity etc. It also provides the some workflows of AWS S3 such as uploading objects to S3 bucket. Test with other client projects such as 13 | * [design.automation-windows-services-sample](https://github.com/Autodesk-Forge/design.automation-windows-services-sample) 14 | * [design.automation-workflow-winform-sample](https://github.com/Autodesk-Forge/design.automation-workflow-winform-sample) 15 | 16 | ## Thumbnail 17 | ![thumbnail](/thumbnail.png) 18 | 19 | ## Setup 20 | 21 | ### Dependencies 22 | * Download and install [Visual Studio](https://visualstudio.microsoft.com/downloads/). In the latest test, Visual Studio version is 2017. 23 | * If testing with AWS S3, ensure you have already [AWS account and S3 storage](https://aws.amazon.com/s3/). 24 | 25 | ### Prerequisites 26 | 1. **Forge Account**: Learn how to create a Forge Account, activate subscription and create an app at [this tutorial](http://learnforge.autodesk.io/#/account/). Make sure to select the service **Design Automation**. 27 | 2. Make a note with the credentials (client id and client secret) of the app. 28 | 29 | ## Running locally 30 | * Open the project. Restore the packages of the project by [NuGet](https://www.nuget.org/). The simplest way is 31 | * VS2012: Projects tab >> Enable NuGet Package Restore. Then right click the project>>"Manage NuGet Packages for Solution" >> "Restore" (top right of dialog) 32 | * VS2013/VS2015/2017: right click the project>>"Manage NuGet Packages for Solution" >> "Restore" (top right of dialog) 33 | * Add other missing references 34 | * Build the library project to generate the dll. 35 | * Test with other client projects such as 36 | * [design.automation-windows-services-sample](https://github.com/Autodesk-Forge/design.automation-windows-services-sample) 37 | * [design.automation-workflow-winform-sample](https://github.com/Autodesk-Forge/design.automation-workflow-winform-sample) 38 | 39 | ## Troubleshooting 40 | * be sure to connect to the endpoint which is the same region of your S3 bucket! line 168 of [GeneralUtilities.cs](./AutoCADIOUtil/GeneralUtilities.cs) 41 | ![thumbnail](./help/AWS-region.png) 42 | 43 | ## Further Reading 44 | * [Design Automation API help](https://forge.autodesk.com/en/docs/design-automation/v2/developers_guide/overview/) 45 | * [ Intro to Design Automation API Video](https://www.youtube.com/watch?v=GWsJM344CJE&t=107s) 46 | * [Working with Amazon S3 Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html) 47 | 48 | ## Known Issues 49 | * as of writing, Design Automation of Forge is released with version 2. Odata is used with .NET project. In futher version, OData might not be used. 50 | 51 | ## License 52 | 53 | These samples are licensed under the terms of the [MIT License](http://opensource.org/licenses/MIT). Please see the [LICENSE](LICENSE) file for full details. 54 | 55 | ## Written by 56 | 57 | Jonathan Miao & Albert Szilvasy 58 | -------------------------------------------------------------------------------- /AutoCADIOUtil/AutoCADIOUtil.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {E97747E1-F96C-496F-BE5C-E77B5434B1F7} 8 | Library 9 | Properties 10 | AutoCADIOUtil 11 | AutoCADIOUtil 12 | v4.5 13 | 512 14 | 15 | 16 | true 17 | full 18 | false 19 | bin\Debug\ 20 | DEBUG;TRACE 21 | prompt 22 | 4 23 | 24 | 25 | pdbonly 26 | true 27 | bin\Release\ 28 | TRACE 29 | prompt 30 | 4 31 | 32 | 33 | 34 | ..\packages\AWSSDK.2.3.55.0\lib\net45\AWSSDK.dll 35 | 36 | 37 | ..\packages\Microsoft.OData.Client.6.15.0\lib\net40\Microsoft.OData.Client.dll 38 | 39 | 40 | ..\packages\Microsoft.OData.Core.6.15.0\lib\portable-net45+win+wpa81\Microsoft.OData.Core.dll 41 | 42 | 43 | ..\packages\Microsoft.OData.Edm.6.15.0\lib\portable-net45+win+wpa81\Microsoft.OData.Edm.dll 44 | 45 | 46 | ..\packages\Microsoft.Spatial.6.15.0\lib\portable-net45+win+wpa81\Microsoft.Spatial.dll 47 | 48 | 49 | ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll 50 | 51 | 52 | ..\packages\RestSharp.105.2.3\lib\net45\RestSharp.dll 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | True 70 | True 71 | AIO.tt 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | TextTemplatingFileGenerator 84 | AIO.cs 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 101 | -------------------------------------------------------------------------------- /AutoCADIOUtil/Service References/AcadIO/service.edmx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | -------------------------------------------------------------------------------- /AutoCADIOUtil/GeneralUtilities.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Collections.Specialized; 7 | using System.IO; 8 | using System.IO.Compression; 9 | 10 | namespace Autodesk 11 | { 12 | public class GeneralUtils 13 | { 14 | /// 15 | /// Bucket name in Amazon S3 to be used for uploading drawing 16 | /// 17 | public static String S3BucketName 18 | { 19 | get; 20 | set; 21 | } 22 | 23 | /// 24 | /// Identifies the commands exposed by a bundle represented by the "packageZipFilePath" 25 | /// 26 | /// Path to the zip file of the bundle 27 | /// Returns the local commands identified from packagecontents.xml 28 | /// Returns the global commands identified from packagecontents.xml 29 | public static void FindListedCommands(String packageZipFilePath, ref StringCollection localCommands, ref StringCollection globalCommands) 30 | { 31 | String tempPath = System.IO.Path.GetTempPath(); 32 | if (File.Exists(packageZipFilePath)) 33 | { 34 | using (System.IO.Compression.ZipArchive za = System.IO.Compression.ZipFile.OpenRead(packageZipFilePath)) 35 | { 36 | foreach (ZipArchiveEntry entry in za.Entries) 37 | { 38 | if (entry.FullName.EndsWith("PackageContents.xml", StringComparison.OrdinalIgnoreCase)) 39 | { 40 | Directory.CreateDirectory(Path.GetDirectoryName(Path.Combine(tempPath, entry.FullName))); 41 | String packageContentsXmlFilePath = Path.Combine(tempPath, entry.FullName); 42 | 43 | if (File.Exists(packageContentsXmlFilePath)) 44 | File.Delete(packageContentsXmlFilePath); 45 | 46 | entry.ExtractToFile(packageContentsXmlFilePath); 47 | 48 | localCommands.Clear(); 49 | globalCommands.Clear(); 50 | 51 | System.IO.TextReader tr = new System.IO.StreamReader(packageContentsXmlFilePath); 52 | using (System.Xml.XmlReader reader = System.Xml.XmlReader.Create(tr)) 53 | { 54 | while (reader.ReadToFollowing("Command")) 55 | { 56 | reader.MoveToFirstAttribute(); 57 | if (reader.Name.Equals("Local")) 58 | localCommands.Add(reader.Value); 59 | else if (reader.Name.Equals("Global")) 60 | globalCommands.Add(reader.Value); 61 | 62 | while (reader.MoveToNextAttribute()) 63 | { 64 | if (reader.Name.Equals("Local")) 65 | localCommands.Add(reader.Value); 66 | else if (reader.Name.Equals("Global")) 67 | globalCommands.Add(reader.Value); 68 | } 69 | } 70 | } 71 | tr.Close(); 72 | 73 | break; 74 | } 75 | } 76 | } 77 | } 78 | } 79 | 80 | /// 81 | /// Uploads the contents from "filePath" to the url provided 82 | /// 83 | /// Upload url 84 | /// Local file path 85 | /// true if uploaded, false otherwise 86 | public static bool UploadObject(string url, string filePath) 87 | { 88 | bool uploaded = false; 89 | System.Net.HttpWebRequest httpRequest = System.Net.HttpWebRequest.Create(url) as System.Net.HttpWebRequest; 90 | httpRequest.Method = "PUT"; 91 | using (Stream dataStream = httpRequest.GetRequestStream()) 92 | { 93 | byte[] buffer = new byte[4096]; 94 | using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read)) 95 | { 96 | int bytesRead = 0; 97 | while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length)) > 0) 98 | { 99 | dataStream.Write(buffer, 0, bytesRead); 100 | } 101 | } 102 | } 103 | System.Net.HttpWebResponse response = httpRequest.GetResponse() as System.Net.HttpWebResponse; 104 | uploaded = (response.StatusCode == System.Net.HttpStatusCode.OK); 105 | return uploaded; 106 | } 107 | 108 | /// 109 | /// Downloads and saves the contents from the url in a local file 110 | /// 111 | /// Download url 112 | /// Local file path to which the contents were saved 113 | /// true if downloaded, false otherwise 114 | public static bool Download(String url, ref String localFilePath) 115 | { 116 | try 117 | { 118 | if (String.IsNullOrEmpty(url)) 119 | return false; 120 | 121 | // Load the url in web browser 122 | if (url.StartsWith("http://") || url.StartsWith("https://")) 123 | { 124 | String filename = Path.GetFileName(new Uri(url).AbsolutePath); 125 | localFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, filename); 126 | 127 | using (System.Net.WebClient wc = new System.Net.WebClient()) 128 | { 129 | wc.DownloadFile(url, localFilePath); 130 | } 131 | 132 | if (!String.IsNullOrEmpty(localFilePath)) 133 | { 134 | return true; 135 | } 136 | } 137 | } 138 | catch (System.UriFormatException) 139 | { 140 | Console.WriteLine(url + "could not be loaded."); 141 | } 142 | catch (System.Exception ex) 143 | { 144 | Console.WriteLine(ex.Message); 145 | } 146 | 147 | localFilePath = String.Empty; 148 | return false; 149 | } 150 | 151 | /// 152 | /// Uploads the drawing to Amazon S3 153 | /// 154 | /// 155 | /// Presigned Url of the uploaded drawing file in Amazon S3 156 | public static String UploadDrawingToS3(String dwgFilePath) 157 | { 158 | String s3URL = String.Empty; 159 | 160 | try 161 | { 162 | if (!System.IO.File.Exists(dwgFilePath)) 163 | return s3URL; 164 | 165 | String keyName = System.IO.Path.GetFileName(dwgFilePath); 166 | 167 | //be sure to connect to the endpoint which is the same region of your bucket! 168 | using (Amazon.S3.IAmazonS3 client = new Amazon.S3.AmazonS3Client(Amazon.RegionEndpoint.USWest2)) 169 | { 170 | Amazon.S3.Model.PutObjectRequest putRequest1 = new Amazon.S3.Model.PutObjectRequest 171 | { 172 | BucketName = S3BucketName, 173 | Key = keyName, 174 | ContentBody = "sample text" 175 | }; 176 | 177 | Amazon.S3.Model.PutObjectResponse response1 = client.PutObject(putRequest1); 178 | 179 | Amazon.S3.Model.PutObjectRequest putRequest2 = new Amazon.S3.Model.PutObjectRequest 180 | { 181 | BucketName = S3BucketName, 182 | Key = keyName, 183 | FilePath = dwgFilePath, 184 | ContentType = "application/acad" 185 | }; 186 | putRequest2.Metadata.Add("x-amz-meta-title", keyName); 187 | 188 | Amazon.S3.Model.PutObjectResponse response2 = client.PutObject(putRequest2); 189 | 190 | Amazon.S3.Model.GetPreSignedUrlRequest request1 = new Amazon.S3.Model.GetPreSignedUrlRequest 191 | { 192 | BucketName = S3BucketName, 193 | Key = keyName, 194 | Expires = DateTime.Now.AddMinutes(5) 195 | }; 196 | 197 | s3URL = client.GetPreSignedURL(request1); 198 | 199 | Console.WriteLine(s3URL); 200 | } 201 | } 202 | catch (Amazon.S3.AmazonS3Exception amazonS3Exception) 203 | { 204 | if (amazonS3Exception.ErrorCode != null && 205 | (amazonS3Exception.ErrorCode.Equals("InvalidAccessKeyId") || 206 | amazonS3Exception.ErrorCode.Equals("InvalidSecurity"))) 207 | { 208 | Console.WriteLine("Check the provided AWS Credentials."); 209 | Console.WriteLine("For service sign up go to http://aws.amazon.com/s3"); 210 | } 211 | else 212 | { 213 | Console.WriteLine("Error occurred. Message:'{0}' when writing an object", amazonS3Exception.Message); 214 | } 215 | } 216 | return s3URL; 217 | } 218 | } 219 | } 220 | -------------------------------------------------------------------------------- /AutoCADIOUtil/AutoCADIOUtilities.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Net.Http; 7 | using System.Text.RegularExpressions; 8 | using System.IO; 9 | using System.Collections.ObjectModel; 10 | 11 | using Newtonsoft.Json; 12 | 13 | namespace Autodesk 14 | { 15 | class ForgeDesignAutoSrv 16 | { 17 | public static string containerUrl = "https://developer.api.autodesk.com/autocad.io/us-east/v2/"; 18 | 19 | //check with developer portal of Forge if any endpoints are updated when you test this sample 20 | //https://developer.autodesk.com 21 | 22 | public static string forgeServiceBaseUrl = "https://developer.api.autodesk.com"; 23 | public static string autenticationUrl = forgeServiceBaseUrl + "/authentication/v1/authenticate"; 24 | } 25 | 26 | public class AcadIOUtils 27 | { 28 | private static AIO.Operations.Container container = null; 29 | private static String _accessToken = String.Empty; 30 | private static RestSharp.RestClient restClient = new RestSharp.RestClient(ForgeDesignAutoSrv.containerUrl); 31 | 32 | /// 33 | /// Does setup of AutoCAD IO. 34 | /// This method will need to be invoked once before any other methods of this 35 | /// utility class can be invoked. 36 | /// 37 | /// AutoCAD IO Client ID - can be obtained from developer.autodesk.com 38 | /// AutoCAD IO Client Secret - can be obtained from developer.autodesk.com 39 | public static void SetupAutoCADIOContainer(String autocadioclientid, String autocadioclientsecret) 40 | { 41 | try 42 | { 43 | String clientId = autocadioclientid; 44 | String clientSecret = autocadioclientsecret; 45 | 46 | Uri uri = new Uri(ForgeDesignAutoSrv.containerUrl); 47 | container = new AIO.Operations.Container(uri); 48 | container.Format.UseJson(); 49 | 50 | using (var client = new HttpClient()) 51 | { 52 | var values = new List>(); 53 | values.Add(new KeyValuePair("client_id", clientId)); 54 | values.Add(new KeyValuePair("client_secret", clientSecret)); 55 | values.Add(new KeyValuePair("grant_type", "client_credentials")); 56 | values.Add(new KeyValuePair("scope", "code:all")); 57 | 58 | var requestContent = new FormUrlEncodedContent(values); 59 | var response = client.PostAsync(ForgeDesignAutoSrv.autenticationUrl, requestContent).Result; 60 | var responseContent = response.Content.ReadAsStringAsync().Result; 61 | var resValues = JsonConvert.DeserializeObject>(responseContent); 62 | _accessToken = resValues["token_type"] + " " + resValues["access_token"]; 63 | if (!string.IsNullOrEmpty(_accessToken)) 64 | { 65 | container.SendingRequest2 += (sender, e) => e.RequestMessage.SetHeader("Authorization", _accessToken); 66 | } 67 | } 68 | } 69 | catch (System.Exception ex) 70 | { 71 | Console.WriteLine(String.Format("Error while connecting to https://developer.api.autodesk.com/autocad.io/v2/", ex.Message)); 72 | container = null; 73 | throw; 74 | } 75 | } 76 | 77 | /// 78 | /// Get the activity name and script associated with the activities 79 | /// 80 | /// Key Value pair of the activity names and script associated with each activity 81 | public static Dictionary GetActivityDetails() 82 | { 83 | Dictionary activityDetails = new Dictionary(); 84 | try 85 | { 86 | foreach (AIO.ACES.Models.Activity act in container.Activities) 87 | { 88 | String activityId = act.Id; 89 | AIO.ACES.Models.Instruction activityInstruction = act.Instruction; 90 | activityDetails.Add(String.Format("{0}", activityId), act.Instruction.Script); 91 | } 92 | } 93 | catch (System.Exception ex) 94 | { 95 | Console.WriteLine(ex.Message); 96 | } 97 | return activityDetails; 98 | } 99 | 100 | /// 101 | /// Get the appPackage name and resource associated with the appPackages 102 | /// 103 | /// Key Value pair of the appPackage name and resource url associated with each appPackage 104 | public static Dictionary GetAppPackageDetails() 105 | { 106 | Dictionary packageDetails = new Dictionary(); 107 | try 108 | { 109 | foreach (AIO.ACES.Models.AppPackage appPackage in container.AppPackages) 110 | { 111 | String packageId = appPackage.Id; 112 | packageDetails.Add(String.Format("{0}", packageId), appPackage.Resource); 113 | } 114 | } 115 | catch (System.Exception ex) 116 | { 117 | Console.WriteLine(ex.Message); 118 | } 119 | return packageDetails; 120 | } 121 | 122 | /// 123 | /// Creates a new activity 124 | /// 125 | /// Unique name identifying the activity 126 | /// AutoCAD Script that is associated with the activity 127 | /// Package Ids to link with the new activity being created 128 | /// true if activity was created, false otherwise 129 | public static bool CreateActivity(String activityId, String script, ObservableCollection linkedPackages) 130 | { 131 | if (String.IsNullOrEmpty(activityId) || String.IsNullOrEmpty(script)) 132 | return false; 133 | 134 | bool created = false; 135 | try 136 | { 137 | foreach (AIO.ACES.Models.Activity act1 in container.Activities) 138 | { 139 | if (activityId.Equals(act1.Id)) 140 | { 141 | // Activity already exists ! 142 | Console.WriteLine(String.Format("Activity with name {0} already exists !", act1.Id)); 143 | return false; 144 | } 145 | } 146 | 147 | // Identify the result file in the script. 148 | // The result file name can be any name of your choice, AutoCADIO does not have a restriction on that. 149 | // But just to make the code generic and to have it identify the result file automatically from the script, 150 | // we look for anything that sounds like result.pdf, Result.dwf, RESULT.DWG etc. 151 | String resultLocalFileName = String.Empty; 152 | foreach (Match m in Regex.Matches(script, "(?i)result.[a-z][a-z][a-z]")) 153 | { 154 | resultLocalFileName = m.Value; 155 | } 156 | 157 | if (String.IsNullOrEmpty(resultLocalFileName)) 158 | {// Script did not have file name like Result.pdf, Result.dwg .... 159 | Console.WriteLine(String.Format("Could not identify the result output file in the provided script ! Please use result.* as the output of the script.")); 160 | return false; 161 | } 162 | 163 | // Create a new activity 164 | AIO.ACES.Models.Activity act = new AIO.ACES.Models.Activity() 165 | { 166 | Id = activityId, 167 | Version = 1, 168 | Instruction = new AIO.ACES.Models.Instruction() 169 | { 170 | Script = script 171 | }, 172 | Parameters = new AIO.ACES.Models.Parameters() 173 | { 174 | InputParameters = { new AIO.ACES.Models.Parameter() { Name = "HostDwg", LocalFileName = "$(HostDwg)" } }, 175 | OutputParameters = { new AIO.ACES.Models.Parameter() { Name = "Result", LocalFileName = resultLocalFileName } } 176 | }, 177 | RequiredEngineVersion = "20.0", 178 | AppPackages = linkedPackages 179 | }; 180 | container.AddToActivities(act); 181 | container.SaveChanges(); 182 | 183 | created = true; 184 | } 185 | catch (System.Exception ex) 186 | { 187 | Console.WriteLine(ex.Message); 188 | } 189 | 190 | return created; 191 | } 192 | 193 | /// 194 | /// Removes an existing activity 195 | /// 196 | /// Unique name identifying the activity to be removed. Activity with this name must already exist. 197 | /// true if activity was removed, false otherwise 198 | public static bool DeleteActivity(String activityId) 199 | { 200 | bool deleted = false; 201 | 202 | try 203 | { 204 | foreach (AIO.ACES.Models.Activity act1 in container.Activities) 205 | { 206 | if (activityId.Equals(act1.Id)) 207 | { 208 | UriBuilder builder = new UriBuilder(container.BaseUri); 209 | builder.Path += String.Format("Activities('{0}')", act1.Id); 210 | System.Net.HttpWebRequest httpRequest = System.Net.HttpWebRequest.Create(builder.Uri) as System.Net.HttpWebRequest; 211 | httpRequest.Method = "DELETE"; 212 | httpRequest.Headers.Add("Authorization", _accessToken); 213 | System.Net.HttpWebResponse response = httpRequest.GetResponse() as System.Net.HttpWebResponse; 214 | //When Delete succeeds, it returns “204 No Content”. Else, you will get other error status. 215 | deleted = (response.StatusCode == System.Net.HttpStatusCode.NoContent); 216 | break; 217 | } 218 | } 219 | } 220 | catch (System.Exception ex) 221 | { 222 | Console.WriteLine(ex.Message); 223 | } 224 | return deleted; 225 | } 226 | 227 | /// 228 | /// Updates an existing activity script 229 | /// 230 | /// Unique name identifying the activity to be updated. Activity with this name must already exist. 231 | /// Script to replace the existing one associated with the activity 232 | /// true if activity was updated, false otherwise 233 | public static bool UpdateActivity(String activityId, String script) 234 | { 235 | if (String.IsNullOrEmpty(activityId) || String.IsNullOrEmpty(script)) 236 | return false; 237 | 238 | // Identify the result file in the script. 239 | // The result file name can be any name of your choice, AutoCAD IO does not have a restriction on that. 240 | // But just to make the code generic and to have it identify the result file automatically from the script, 241 | // we look for anything that sounds like result.pdf, Result.dwf, RESULT.DWG etc. 242 | String resultLocalFileName = String.Empty; 243 | foreach (Match m in Regex.Matches(script, "(?i)result.[a-z][a-z][a-z]")) 244 | { 245 | resultLocalFileName = m.Value; 246 | } 247 | 248 | if (String.IsNullOrEmpty(resultLocalFileName)) 249 | {// Script did not have file name like Result.pdf, Result.dwg .... 250 | Console.WriteLine(String.Format("Could not identify the result output file in the provided script ! Please use result.* as the output of the script.")); 251 | return false; 252 | } 253 | 254 | bool activityUpdated = false; 255 | 256 | try 257 | { 258 | foreach (AIO.ACES.Models.Activity act1 in container.Activities) 259 | { 260 | if (activityId.Equals(act1.Id)) 261 | { 262 | var ins = new AIO.ACES.Models.Instruction(); 263 | ins.Script = script; 264 | act1.Instruction = ins; 265 | container.UpdateObject(act1); 266 | container.SaveChanges(); 267 | activityUpdated = true; 268 | break; 269 | } 270 | } 271 | } 272 | catch (System.Exception ex) 273 | { 274 | Console.WriteLine(ex.Message); 275 | } 276 | return activityUpdated; 277 | } 278 | 279 | /// 280 | /// Creates a new WorkItem 281 | /// 282 | /// ActivityId that is associated with the new workItem 283 | /// Url of the drawing after it has been uploaded to Amazon S3 284 | /// true if WorkItem was created, false otherwise 285 | public static String SubmitWorkItem(String activityId, String hostDwgS3Url) 286 | { 287 | try 288 | { 289 | AIO.ACES.Models.WorkItem wi = new AIO.ACES.Models.WorkItem() 290 | { 291 | Id = "", 292 | Arguments = new AIO.ACES.Models.Arguments(), 293 | ActivityId = activityId 294 | }; 295 | 296 | // Drawing 297 | wi.Arguments.InputArguments.Add(new AIO.ACES.Models.Argument() 298 | { 299 | Name = "HostDwg", 300 | Resource = hostDwgS3Url, 301 | StorageProvider = AIO.ACES.Models.StorageProvider.Generic, 302 | HttpVerb = AIO.ACES.Models.HttpVerbType.GET 303 | }); 304 | 305 | wi.Arguments.OutputArguments.Add(new AIO.ACES.Models.Argument() 306 | { 307 | Name = "Result", 308 | Resource = null, 309 | StorageProvider = AIO.ACES.Models.StorageProvider.Generic, 310 | HttpVerb = AIO.ACES.Models.HttpVerbType.POST 311 | }); 312 | 313 | container.MergeOption = Microsoft.OData.Client.MergeOption.OverwriteChanges; 314 | container.AddToWorkItems(wi); 315 | container.SaveChanges(); 316 | 317 | Console.WriteLine("Submitted WorkItem. WorkItem Id= {0}", wi.Id); 318 | Console.WriteLine("Checking WorkItem status..."); 319 | 320 | do 321 | { 322 | System.Threading.Thread.Sleep(5000); 323 | wi = container.WorkItems.Where(p => p.Id == wi.Id).SingleOrDefault(); 324 | Console.WriteLine("WorkItem Status : {0}", wi.Status); 325 | } while (wi.Status == AIO.ACES.Models.ExecutionStatus.Pending || wi.Status == AIO.ACES.Models.ExecutionStatus.InProgress); 326 | 327 | Console.WriteLine("WorkItem Status : {0}", wi.Status); 328 | Console.WriteLine("The result is downloadable at {0}", wi.Arguments.OutputArguments.First().Resource); 329 | 330 | return wi.Arguments.OutputArguments.First().Resource; 331 | } 332 | catch (System.Net.WebException ex) 333 | { 334 | Console.WriteLine(String.Format("WorkItem using {0} activity was not processed. {1}", activityId, ex.Message)); 335 | } 336 | catch (System.Data.Services.Client.DataServiceRequestException ex) 337 | { 338 | Console.WriteLine(ex.InnerException.Message); 339 | } 340 | catch (System.Exception ex) 341 | { 342 | Console.WriteLine(String.Format("WorkItem using {0} activity was not processed. {1}", activityId, ex.Message)); 343 | } 344 | 345 | return String.Empty; 346 | } 347 | 348 | /// 349 | /// Creates a new AppPackage 350 | /// 351 | /// Unique name identifying the appPackage to be created. AppPackage must not already exist with the same name. 352 | /// Local folder path to the autoloader bundle. This path must contain the PackageContents.xml 353 | /// true if appPackage was created, false otherwise 354 | public static bool CreateAppPackageFromBundle(String packageId, string bundleFolderPath) 355 | { 356 | bool appPackageCreated = false; 357 | 358 | if (String.IsNullOrEmpty(packageId)) 359 | return appPackageCreated; 360 | 361 | // Check if the selected folder contains "PackageContents.xml" as a check for 362 | // a valid bundle folder that we can zip and upload 363 | if (File.Exists(Path.Combine(bundleFolderPath, "PackageContents.xml")) == false) 364 | { 365 | Console.WriteLine(String.Format("{0} is not a bundle folder. Please select a valid bundle.", bundleFolderPath)); 366 | return appPackageCreated; 367 | } 368 | 369 | String bundleName = Path.GetFileName(bundleFolderPath); 370 | 371 | String tempPath = System.IO.Path.GetTempPath(); 372 | String packageZipFilePath = Path.Combine(tempPath, String.Format("{0}.zip", bundleName)); 373 | if (File.Exists(packageZipFilePath)) 374 | { 375 | // Delete existing zip file if any from the temp folder 376 | File.Delete(packageZipFilePath); 377 | } 378 | 379 | System.IO.Compression.ZipFile.CreateFromDirectory(bundleFolderPath, packageZipFilePath, System.IO.Compression.CompressionLevel.Optimal, true); 380 | 381 | if (File.Exists(packageZipFilePath)) 382 | { 383 | // Zip was created. Create a App Package using it. 384 | if (CreateAppPackageFromZip(packageId, packageZipFilePath)) 385 | {// App Package created ok 386 | appPackageCreated = true; 387 | Console.WriteLine(String.Format("Created new app package.")); 388 | } 389 | else 390 | { 391 | Console.WriteLine(String.Format("Sorry, could not create new app package.")); 392 | appPackageCreated = false; 393 | } 394 | } 395 | 396 | return appPackageCreated; 397 | } 398 | 399 | /// 400 | /// Creates a new AppPackage 401 | /// 402 | /// Unique name identifying the appPackage to be created. AppPackage must not already exist with the same name. 403 | /// Local path to the autoloader bundle after it has been zipped. 404 | /// true if appPackage was created, false otherwise 405 | public static bool CreateAppPackageFromZip(String packageId, string packageZipFilePath) 406 | { 407 | if (String.IsNullOrEmpty(packageId) || !File.Exists(packageZipFilePath)) 408 | return false; 409 | 410 | AIO.ACES.Models.AppPackage appPackage = null; 411 | 412 | foreach (AIO.ACES.Models.AppPackage pack in container.AppPackages) 413 | { 414 | if (pack.Id.Equals(packageId)) 415 | { 416 | appPackage = pack; 417 | break; 418 | } 419 | } 420 | 421 | if (appPackage == null) 422 | { 423 | try 424 | { 425 | // First step -- query for the url to upload the AppPackage file 426 | UriBuilder builder = new UriBuilder(container.BaseUri); 427 | builder.Path += "AppPackages/Operations.GetUploadUrl"; 428 | var url = container.Execute(builder.Uri, "GET", true, null).First(); 429 | 430 | // Second step -- upload AppPackage file 431 | if (GeneralUtils.UploadObject(url, packageZipFilePath)) 432 | { 433 | // third step -- after upload, create the AppPackage 434 | appPackage = new AIO.ACES.Models.AppPackage() 435 | { 436 | Id = packageId, 437 | Version = 1, 438 | RequiredEngineVersion = "20.0", 439 | Resource = url 440 | }; 441 | container.AddToAppPackages(appPackage); 442 | container.SaveChanges(); 443 | } 444 | } 445 | catch (System.Exception ex) 446 | { 447 | Console.WriteLine(ex.Message); 448 | } 449 | } 450 | 451 | return (appPackage != null); 452 | } 453 | 454 | /// 455 | /// Removes an existing appPackage 456 | /// 457 | /// Unique name identifying the appPackage to be removed. appPackage with this name must already exist. 458 | /// true if appPackage was removed, false otherwise 459 | /// 460 | public static bool DeletePackage(string packageId) 461 | { 462 | if (String.IsNullOrEmpty(packageId)) 463 | return false; 464 | 465 | bool deleted = false; 466 | try 467 | { 468 | foreach (AIO.ACES.Models.AppPackage pack in container.AppPackages) 469 | { 470 | if (packageId.Equals(pack.Id)) 471 | { 472 | UriBuilder builder = new UriBuilder(container.BaseUri); 473 | builder.Path += String.Format("AppPackages('{0}')", packageId); 474 | System.Net.HttpWebRequest httpRequest = System.Net.HttpWebRequest.Create(builder.Uri) as System.Net.HttpWebRequest; 475 | httpRequest.Method = "DELETE"; 476 | httpRequest.Headers.Add("Authorization", _accessToken); 477 | System.Net.HttpWebResponse response = httpRequest.GetResponse() as System.Net.HttpWebResponse; 478 | //When Delete succeeds, it returns “204 No Content”. Else, you will get other error status. 479 | deleted = (response.StatusCode == System.Net.HttpStatusCode.NoContent); 480 | break; 481 | } 482 | } 483 | } 484 | catch (System.Exception ex) 485 | { 486 | Console.WriteLine(ex.Message); 487 | } 488 | 489 | return deleted; 490 | } 491 | } 492 | } 493 | -------------------------------------------------------------------------------- /AutoCADIOUtil/Service References/AcadIO/Reference.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.34209 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | // Original file name: 12 | // Generation date: 04-11-2014 03:27:05 13 | namespace Autodesk.AcadIO 14 | { 15 | 16 | /// 17 | /// There are no comments for Container in the schema. 18 | /// 19 | public partial class Container : global::System.Data.Services.Client.DataServiceContext 20 | { 21 | /// 22 | /// Initialize a new Container object. 23 | /// 24 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 25 | public Container(global::System.Uri serviceRoot) : 26 | base(serviceRoot, global::System.Data.Services.Common.DataServiceProtocolVersion.V3) 27 | { 28 | this.ResolveName = new global::System.Func(this.ResolveNameFromType); 29 | this.ResolveType = new global::System.Func(this.ResolveTypeFromName); 30 | this.OnContextCreated(); 31 | this.Format.LoadServiceModel = GeneratedEdmModel.GetInstance; 32 | } 33 | partial void OnContextCreated(); 34 | /// 35 | /// Since the namespace configured for this service reference 36 | /// in Visual Studio is different from the one indicated in the 37 | /// server schema, use type-mappers to map between the two. 38 | /// 39 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 40 | protected global::System.Type ResolveTypeFromName(string typeName) 41 | { 42 | global::System.Type resolvedType = this.DefaultResolveType(typeName, "ACES.Models", "Autodesk.AcadIO"); 43 | if ((resolvedType != null)) 44 | { 45 | return resolvedType; 46 | } 47 | return null; 48 | } 49 | /// 50 | /// Since the namespace configured for this service reference 51 | /// in Visual Studio is different from the one indicated in the 52 | /// server schema, use type-mappers to map between the two. 53 | /// 54 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 55 | protected string ResolveNameFromType(global::System.Type clientType) 56 | { 57 | if (clientType.Namespace.Equals("Autodesk.AcadIO", global::System.StringComparison.Ordinal)) 58 | { 59 | return string.Concat("ACES.Models.", clientType.Name); 60 | } 61 | return null; 62 | } 63 | /// 64 | /// There are no comments for Activities in the schema. 65 | /// 66 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 67 | public global::System.Data.Services.Client.DataServiceQuery Activities 68 | { 69 | get 70 | { 71 | if ((this._Activities == null)) 72 | { 73 | this._Activities = base.CreateQuery("Activities"); 74 | } 75 | return this._Activities; 76 | } 77 | } 78 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 79 | private global::System.Data.Services.Client.DataServiceQuery _Activities; 80 | /// 81 | /// There are no comments for AppPackages in the schema. 82 | /// 83 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 84 | public global::System.Data.Services.Client.DataServiceQuery AppPackages 85 | { 86 | get 87 | { 88 | if ((this._AppPackages == null)) 89 | { 90 | this._AppPackages = base.CreateQuery("AppPackages"); 91 | } 92 | return this._AppPackages; 93 | } 94 | } 95 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 96 | private global::System.Data.Services.Client.DataServiceQuery _AppPackages; 97 | /// 98 | /// There are no comments for WorkItems in the schema. 99 | /// 100 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 101 | public global::System.Data.Services.Client.DataServiceQuery WorkItems 102 | { 103 | get 104 | { 105 | if ((this._WorkItems == null)) 106 | { 107 | this._WorkItems = base.CreateQuery("WorkItems"); 108 | } 109 | return this._WorkItems; 110 | } 111 | } 112 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 113 | private global::System.Data.Services.Client.DataServiceQuery _WorkItems; 114 | /// 115 | /// There are no comments for Activities in the schema. 116 | /// 117 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 118 | public void AddToActivities(Activity activity) 119 | { 120 | base.AddObject("Activities", activity); 121 | } 122 | /// 123 | /// There are no comments for AppPackages in the schema. 124 | /// 125 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 126 | public void AddToAppPackages(AppPackage appPackage) 127 | { 128 | base.AddObject("AppPackages", appPackage); 129 | } 130 | /// 131 | /// There are no comments for WorkItems in the schema. 132 | /// 133 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 134 | public void AddToWorkItems(WorkItem workItem) 135 | { 136 | base.AddObject("WorkItems", workItem); 137 | } 138 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 139 | private abstract class GeneratedEdmModel 140 | { 141 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 142 | private static global::Microsoft.Data.Edm.IEdmModel ParsedModel = LoadModelFromString(); 143 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 144 | private const string ModelPart0 = "" + 232 | ""; 242 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 243 | private static string GetConcatenatedEdmxString() 244 | { 245 | return string.Concat(ModelPart0, ModelPart1); 246 | } 247 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 248 | public static global::Microsoft.Data.Edm.IEdmModel GetInstance() 249 | { 250 | return ParsedModel; 251 | } 252 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 253 | private static global::Microsoft.Data.Edm.IEdmModel LoadModelFromString() 254 | { 255 | string edmxToParse = GetConcatenatedEdmxString(); 256 | global::System.Xml.XmlReader reader = CreateXmlReader(edmxToParse); 257 | try 258 | { 259 | return global::Microsoft.Data.Edm.Csdl.EdmxReader.Parse(reader); 260 | } 261 | finally 262 | { 263 | ((global::System.IDisposable)(reader)).Dispose(); 264 | } 265 | } 266 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 267 | private static global::System.Xml.XmlReader CreateXmlReader(string edmxToParse) 268 | { 269 | return global::System.Xml.XmlReader.Create(new global::System.IO.StringReader(edmxToParse)); 270 | } 271 | } 272 | } 273 | /// 274 | /// There are no comments for ComplexType ACES.Models.Parameters in the schema. 275 | /// 276 | public partial class Parameters : global::System.ComponentModel.INotifyPropertyChanged 277 | { 278 | /// 279 | /// Create a new Parameters object. 280 | /// 281 | /// Initial value of InputParameters. 282 | /// Initial value of OutputParameters. 283 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 284 | public static Parameters CreateParameters(global::System.Collections.ObjectModel.ObservableCollection inputParameters, global::System.Collections.ObjectModel.ObservableCollection outputParameters) 285 | { 286 | Parameters parameters = new Parameters(); 287 | if ((inputParameters == null)) 288 | { 289 | throw new global::System.ArgumentNullException("inputParameters"); 290 | } 291 | parameters.InputParameters = inputParameters; 292 | if ((outputParameters == null)) 293 | { 294 | throw new global::System.ArgumentNullException("outputParameters"); 295 | } 296 | parameters.OutputParameters = outputParameters; 297 | return parameters; 298 | } 299 | /// 300 | /// There are no comments for Property InputParameters in the schema. 301 | /// 302 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 303 | public global::System.Collections.ObjectModel.ObservableCollection InputParameters 304 | { 305 | get 306 | { 307 | return this._InputParameters; 308 | } 309 | set 310 | { 311 | this.OnInputParametersChanging(value); 312 | this._InputParameters = value; 313 | this.OnInputParametersChanged(); 314 | this.OnPropertyChanged("InputParameters"); 315 | } 316 | } 317 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 318 | private global::System.Collections.ObjectModel.ObservableCollection _InputParameters = new global::System.Collections.ObjectModel.ObservableCollection(); 319 | partial void OnInputParametersChanging(global::System.Collections.ObjectModel.ObservableCollection value); 320 | partial void OnInputParametersChanged(); 321 | /// 322 | /// There are no comments for Property OutputParameters in the schema. 323 | /// 324 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 325 | public global::System.Collections.ObjectModel.ObservableCollection OutputParameters 326 | { 327 | get 328 | { 329 | return this._OutputParameters; 330 | } 331 | set 332 | { 333 | this.OnOutputParametersChanging(value); 334 | this._OutputParameters = value; 335 | this.OnOutputParametersChanged(); 336 | this.OnPropertyChanged("OutputParameters"); 337 | } 338 | } 339 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 340 | private global::System.Collections.ObjectModel.ObservableCollection _OutputParameters = new global::System.Collections.ObjectModel.ObservableCollection(); 341 | partial void OnOutputParametersChanging(global::System.Collections.ObjectModel.ObservableCollection value); 342 | partial void OnOutputParametersChanged(); 343 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 344 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 345 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 346 | protected virtual void OnPropertyChanged(string property) 347 | { 348 | if ((this.PropertyChanged != null)) 349 | { 350 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 351 | } 352 | } 353 | } 354 | /// 355 | /// There are no comments for ComplexType ACES.Models.Parameter in the schema. 356 | /// 357 | public partial class Parameter : global::System.ComponentModel.INotifyPropertyChanged 358 | { 359 | /// 360 | /// Create a new Parameter object. 361 | /// 362 | /// Initial value of Name. 363 | /// Initial value of LocalFileName. 364 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 365 | public static Parameter CreateParameter(string name, string localFileName) 366 | { 367 | Parameter parameter = new Parameter(); 368 | parameter.Name = name; 369 | parameter.LocalFileName = localFileName; 370 | return parameter; 371 | } 372 | /// 373 | /// There are no comments for Property Name in the schema. 374 | /// 375 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 376 | public string Name 377 | { 378 | get 379 | { 380 | return this._Name; 381 | } 382 | set 383 | { 384 | this.OnNameChanging(value); 385 | this._Name = value; 386 | this.OnNameChanged(); 387 | this.OnPropertyChanged("Name"); 388 | } 389 | } 390 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 391 | private string _Name; 392 | partial void OnNameChanging(string value); 393 | partial void OnNameChanged(); 394 | /// 395 | /// There are no comments for Property LocalFileName in the schema. 396 | /// 397 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 398 | public string LocalFileName 399 | { 400 | get 401 | { 402 | return this._LocalFileName; 403 | } 404 | set 405 | { 406 | this.OnLocalFileNameChanging(value); 407 | this._LocalFileName = value; 408 | this.OnLocalFileNameChanged(); 409 | this.OnPropertyChanged("LocalFileName"); 410 | } 411 | } 412 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 413 | private string _LocalFileName; 414 | partial void OnLocalFileNameChanging(string value); 415 | partial void OnLocalFileNameChanged(); 416 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 417 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 418 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 419 | protected virtual void OnPropertyChanged(string property) 420 | { 421 | if ((this.PropertyChanged != null)) 422 | { 423 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 424 | } 425 | } 426 | } 427 | /// 428 | /// There are no comments for ComplexType ACES.Models.Instruction in the schema. 429 | /// 430 | public partial class Instruction : global::System.ComponentModel.INotifyPropertyChanged 431 | { 432 | /// 433 | /// There are no comments for Property CommandLineParameters in the schema. 434 | /// 435 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 436 | public string CommandLineParameters 437 | { 438 | get 439 | { 440 | return this._CommandLineParameters; 441 | } 442 | set 443 | { 444 | this.OnCommandLineParametersChanging(value); 445 | this._CommandLineParameters = value; 446 | this.OnCommandLineParametersChanged(); 447 | this.OnPropertyChanged("CommandLineParameters"); 448 | } 449 | } 450 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 451 | private string _CommandLineParameters; 452 | partial void OnCommandLineParametersChanging(string value); 453 | partial void OnCommandLineParametersChanged(); 454 | /// 455 | /// There are no comments for Property Script in the schema. 456 | /// 457 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 458 | public string Script 459 | { 460 | get 461 | { 462 | return this._Script; 463 | } 464 | set 465 | { 466 | this.OnScriptChanging(value); 467 | this._Script = value; 468 | this.OnScriptChanged(); 469 | this.OnPropertyChanged("Script"); 470 | } 471 | } 472 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 473 | private string _Script; 474 | partial void OnScriptChanging(string value); 475 | partial void OnScriptChanged(); 476 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 477 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 478 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 479 | protected virtual void OnPropertyChanged(string property) 480 | { 481 | if ((this.PropertyChanged != null)) 482 | { 483 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 484 | } 485 | } 486 | } 487 | /// 488 | /// There are no comments for ComplexType ACES.Models.AllowedChildProcess in the schema. 489 | /// 490 | public partial class AllowedChildProcess : global::System.ComponentModel.INotifyPropertyChanged 491 | { 492 | /// 493 | /// There are no comments for Property Name in the schema. 494 | /// 495 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 496 | public string Name 497 | { 498 | get 499 | { 500 | return this._Name; 501 | } 502 | set 503 | { 504 | this.OnNameChanging(value); 505 | this._Name = value; 506 | this.OnNameChanged(); 507 | this.OnPropertyChanged("Name"); 508 | } 509 | } 510 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 511 | private string _Name; 512 | partial void OnNameChanging(string value); 513 | partial void OnNameChanged(); 514 | /// 515 | /// There are no comments for Property RelativePath in the schema. 516 | /// 517 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 518 | public string RelativePath 519 | { 520 | get 521 | { 522 | return this._RelativePath; 523 | } 524 | set 525 | { 526 | this.OnRelativePathChanging(value); 527 | this._RelativePath = value; 528 | this.OnRelativePathChanged(); 529 | this.OnPropertyChanged("RelativePath"); 530 | } 531 | } 532 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 533 | private string _RelativePath; 534 | partial void OnRelativePathChanging(string value); 535 | partial void OnRelativePathChanged(); 536 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 537 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 538 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 539 | protected virtual void OnPropertyChanged(string property) 540 | { 541 | if ((this.PropertyChanged != null)) 542 | { 543 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 544 | } 545 | } 546 | } 547 | /// 548 | /// There are no comments for ACES.Models.Activity in the schema. 549 | /// 550 | /// 551 | /// Id 552 | /// UserId 553 | /// 554 | [global::System.Data.Services.Common.EntitySetAttribute("Activities")] 555 | [global::System.Data.Services.Common.DataServiceKeyAttribute("Id", "UserId")] 556 | public partial class Activity : global::System.ComponentModel.INotifyPropertyChanged 557 | { 558 | /// 559 | /// Create a new Activity object. 560 | /// 561 | /// Initial value of RequiredEngineVersion. 562 | /// Initial value of Parameters. 563 | /// Initial value of AllowedChildProcesses. 564 | /// Initial value of Version. 565 | /// Initial value of Timestamp. 566 | /// Initial value of UserId. 567 | /// Initial value of Id. 568 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 569 | public static Activity CreateActivity(string requiredEngineVersion, Parameters parameters, global::System.Collections.ObjectModel.ObservableCollection allowedChildProcesses, int version, global::System.DateTimeOffset timestamp, string userId, string ID) 570 | { 571 | Activity activity = new Activity(); 572 | activity.RequiredEngineVersion = requiredEngineVersion; 573 | if ((parameters == null)) 574 | { 575 | throw new global::System.ArgumentNullException("parameters"); 576 | } 577 | activity.Parameters = parameters; 578 | if ((allowedChildProcesses == null)) 579 | { 580 | throw new global::System.ArgumentNullException("allowedChildProcesses"); 581 | } 582 | activity.AllowedChildProcesses = allowedChildProcesses; 583 | activity.Version = version; 584 | activity.Timestamp = timestamp; 585 | activity.UserId = userId; 586 | activity.Id = ID; 587 | return activity; 588 | } 589 | /// 590 | /// There are no comments for Property RequiredEngineVersion in the schema. 591 | /// 592 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 593 | public string RequiredEngineVersion 594 | { 595 | get 596 | { 597 | return this._RequiredEngineVersion; 598 | } 599 | set 600 | { 601 | this.OnRequiredEngineVersionChanging(value); 602 | this._RequiredEngineVersion = value; 603 | this.OnRequiredEngineVersionChanged(); 604 | this.OnPropertyChanged("RequiredEngineVersion"); 605 | } 606 | } 607 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 608 | private string _RequiredEngineVersion; 609 | partial void OnRequiredEngineVersionChanging(string value); 610 | partial void OnRequiredEngineVersionChanged(); 611 | /// 612 | /// There are no comments for Property Parameters in the schema. 613 | /// 614 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 615 | public Parameters Parameters 616 | { 617 | get 618 | { 619 | if (((this._Parameters == null) 620 | && (this._ParametersInitialized != true))) 621 | { 622 | this._Parameters = new Parameters(); 623 | this._ParametersInitialized = true; 624 | } 625 | return this._Parameters; 626 | } 627 | set 628 | { 629 | this.OnParametersChanging(value); 630 | this._Parameters = value; 631 | this._ParametersInitialized = true; 632 | this.OnParametersChanged(); 633 | this.OnPropertyChanged("Parameters"); 634 | } 635 | } 636 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 637 | private Parameters _Parameters; 638 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 639 | private bool _ParametersInitialized; 640 | partial void OnParametersChanging(Parameters value); 641 | partial void OnParametersChanged(); 642 | /// 643 | /// There are no comments for Property Instruction in the schema. 644 | /// 645 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 646 | public Instruction Instruction 647 | { 648 | get 649 | { 650 | if (((this._Instruction == null) 651 | && (this._InstructionInitialized != true))) 652 | { 653 | this._Instruction = new Instruction(); 654 | this._InstructionInitialized = true; 655 | } 656 | return this._Instruction; 657 | } 658 | set 659 | { 660 | this.OnInstructionChanging(value); 661 | this._Instruction = value; 662 | this._InstructionInitialized = true; 663 | this.OnInstructionChanged(); 664 | this.OnPropertyChanged("Instruction"); 665 | } 666 | } 667 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 668 | private Instruction _Instruction; 669 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 670 | private bool _InstructionInitialized; 671 | partial void OnInstructionChanging(Instruction value); 672 | partial void OnInstructionChanged(); 673 | /// 674 | /// There are no comments for Property AllowedChildProcesses in the schema. 675 | /// 676 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 677 | public global::System.Collections.ObjectModel.ObservableCollection AllowedChildProcesses 678 | { 679 | get 680 | { 681 | return this._AllowedChildProcesses; 682 | } 683 | set 684 | { 685 | this.OnAllowedChildProcessesChanging(value); 686 | this._AllowedChildProcesses = value; 687 | this.OnAllowedChildProcessesChanged(); 688 | this.OnPropertyChanged("AllowedChildProcesses"); 689 | } 690 | } 691 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 692 | private global::System.Collections.ObjectModel.ObservableCollection _AllowedChildProcesses = new global::System.Collections.ObjectModel.ObservableCollection(); 693 | partial void OnAllowedChildProcessesChanging(global::System.Collections.ObjectModel.ObservableCollection value); 694 | partial void OnAllowedChildProcessesChanged(); 695 | /// 696 | /// There are no comments for Property Version in the schema. 697 | /// 698 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 699 | public int Version 700 | { 701 | get 702 | { 703 | return this._Version; 704 | } 705 | set 706 | { 707 | this.OnVersionChanging(value); 708 | this._Version = value; 709 | this.OnVersionChanged(); 710 | this.OnPropertyChanged("Version"); 711 | } 712 | } 713 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 714 | private int _Version; 715 | partial void OnVersionChanging(int value); 716 | partial void OnVersionChanged(); 717 | /// 718 | /// There are no comments for Property Timestamp in the schema. 719 | /// 720 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 721 | public global::System.DateTimeOffset Timestamp 722 | { 723 | get 724 | { 725 | return this._Timestamp; 726 | } 727 | set 728 | { 729 | this.OnTimestampChanging(value); 730 | this._Timestamp = value; 731 | this.OnTimestampChanged(); 732 | this.OnPropertyChanged("Timestamp"); 733 | } 734 | } 735 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 736 | private global::System.DateTimeOffset _Timestamp; 737 | partial void OnTimestampChanging(global::System.DateTimeOffset value); 738 | partial void OnTimestampChanged(); 739 | /// 740 | /// There are no comments for Property UserId in the schema. 741 | /// 742 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 743 | public string UserId 744 | { 745 | get 746 | { 747 | return this._UserId; 748 | } 749 | set 750 | { 751 | this.OnUserIdChanging(value); 752 | this._UserId = value; 753 | this.OnUserIdChanged(); 754 | this.OnPropertyChanged("UserId"); 755 | } 756 | } 757 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 758 | private string _UserId; 759 | partial void OnUserIdChanging(string value); 760 | partial void OnUserIdChanged(); 761 | /// 762 | /// There are no comments for Property Id in the schema. 763 | /// 764 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 765 | public string Id 766 | { 767 | get 768 | { 769 | return this._Id; 770 | } 771 | set 772 | { 773 | this.OnIdChanging(value); 774 | this._Id = value; 775 | this.OnIdChanged(); 776 | this.OnPropertyChanged("Id"); 777 | } 778 | } 779 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 780 | private string _Id; 781 | partial void OnIdChanging(string value); 782 | partial void OnIdChanged(); 783 | /// 784 | /// There are no comments for AppPackages in the schema. 785 | /// 786 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 787 | public global::System.Data.Services.Client.DataServiceCollection AppPackages 788 | { 789 | get 790 | { 791 | return this._AppPackages; 792 | } 793 | set 794 | { 795 | this._AppPackages = value; 796 | this.OnPropertyChanged("AppPackages"); 797 | } 798 | } 799 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 800 | private global::System.Data.Services.Client.DataServiceCollection _AppPackages = new global::System.Data.Services.Client.DataServiceCollection(null, global::System.Data.Services.Client.TrackingMode.None); 801 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 802 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 803 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 804 | protected virtual void OnPropertyChanged(string property) 805 | { 806 | if ((this.PropertyChanged != null)) 807 | { 808 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 809 | } 810 | } 811 | } 812 | /// 813 | /// There are no comments for ACES.Models.AppPackage in the schema. 814 | /// 815 | /// 816 | /// Id 817 | /// UserId 818 | /// 819 | [global::System.Data.Services.Common.EntitySetAttribute("AppPackages")] 820 | [global::System.Data.Services.Common.DataServiceKeyAttribute("Id", "UserId")] 821 | public partial class AppPackage : global::System.ComponentModel.INotifyPropertyChanged 822 | { 823 | /// 824 | /// Create a new AppPackage object. 825 | /// 826 | /// Initial value of Version. 827 | /// Initial value of Timestamp. 828 | /// Initial value of UserId. 829 | /// Initial value of Id. 830 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 831 | public static AppPackage CreateAppPackage(int version, global::System.DateTimeOffset timestamp, string userId, string ID) 832 | { 833 | AppPackage appPackage = new AppPackage(); 834 | appPackage.Version = version; 835 | appPackage.Timestamp = timestamp; 836 | appPackage.UserId = userId; 837 | appPackage.Id = ID; 838 | return appPackage; 839 | } 840 | /// 841 | /// There are no comments for Property Resource in the schema. 842 | /// 843 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 844 | public string Resource 845 | { 846 | get 847 | { 848 | return this._Resource; 849 | } 850 | set 851 | { 852 | this.OnResourceChanging(value); 853 | this._Resource = value; 854 | this.OnResourceChanged(); 855 | this.OnPropertyChanged("Resource"); 856 | } 857 | } 858 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 859 | private string _Resource; 860 | partial void OnResourceChanging(string value); 861 | partial void OnResourceChanged(); 862 | /// 863 | /// There are no comments for Property RequiredEngineVersion in the schema. 864 | /// 865 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 866 | public string RequiredEngineVersion 867 | { 868 | get 869 | { 870 | return this._RequiredEngineVersion; 871 | } 872 | set 873 | { 874 | this.OnRequiredEngineVersionChanging(value); 875 | this._RequiredEngineVersion = value; 876 | this.OnRequiredEngineVersionChanged(); 877 | this.OnPropertyChanged("RequiredEngineVersion"); 878 | } 879 | } 880 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 881 | private string _RequiredEngineVersion; 882 | partial void OnRequiredEngineVersionChanging(string value); 883 | partial void OnRequiredEngineVersionChanged(); 884 | /// 885 | /// There are no comments for Property Version in the schema. 886 | /// 887 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 888 | public int Version 889 | { 890 | get 891 | { 892 | return this._Version; 893 | } 894 | set 895 | { 896 | this.OnVersionChanging(value); 897 | this._Version = value; 898 | this.OnVersionChanged(); 899 | this.OnPropertyChanged("Version"); 900 | } 901 | } 902 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 903 | private int _Version; 904 | partial void OnVersionChanging(int value); 905 | partial void OnVersionChanged(); 906 | /// 907 | /// There are no comments for Property Timestamp in the schema. 908 | /// 909 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 910 | public global::System.DateTimeOffset Timestamp 911 | { 912 | get 913 | { 914 | return this._Timestamp; 915 | } 916 | set 917 | { 918 | this.OnTimestampChanging(value); 919 | this._Timestamp = value; 920 | this.OnTimestampChanged(); 921 | this.OnPropertyChanged("Timestamp"); 922 | } 923 | } 924 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 925 | private global::System.DateTimeOffset _Timestamp; 926 | partial void OnTimestampChanging(global::System.DateTimeOffset value); 927 | partial void OnTimestampChanged(); 928 | /// 929 | /// There are no comments for Property UserId in the schema. 930 | /// 931 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 932 | public string UserId 933 | { 934 | get 935 | { 936 | return this._UserId; 937 | } 938 | set 939 | { 940 | this.OnUserIdChanging(value); 941 | this._UserId = value; 942 | this.OnUserIdChanged(); 943 | this.OnPropertyChanged("UserId"); 944 | } 945 | } 946 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 947 | private string _UserId; 948 | partial void OnUserIdChanging(string value); 949 | partial void OnUserIdChanged(); 950 | /// 951 | /// There are no comments for Property Id in the schema. 952 | /// 953 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 954 | public string Id 955 | { 956 | get 957 | { 958 | return this._Id; 959 | } 960 | set 961 | { 962 | this.OnIdChanging(value); 963 | this._Id = value; 964 | this.OnIdChanged(); 965 | this.OnPropertyChanged("Id"); 966 | } 967 | } 968 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 969 | private string _Id; 970 | partial void OnIdChanging(string value); 971 | partial void OnIdChanged(); 972 | /// 973 | /// There are no comments for References in the schema. 974 | /// 975 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 976 | public global::System.Data.Services.Client.DataServiceCollection References 977 | { 978 | get 979 | { 980 | return this._References; 981 | } 982 | set 983 | { 984 | this._References = value; 985 | this.OnPropertyChanged("References"); 986 | } 987 | } 988 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 989 | private global::System.Data.Services.Client.DataServiceCollection _References = new global::System.Data.Services.Client.DataServiceCollection(null, global::System.Data.Services.Client.TrackingMode.None); 990 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 991 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 992 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 993 | protected virtual void OnPropertyChanged(string property) 994 | { 995 | if ((this.PropertyChanged != null)) 996 | { 997 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 998 | } 999 | } 1000 | } 1001 | /// 1002 | /// There are no comments for ComplexType ACES.Models.Arguments in the schema. 1003 | /// 1004 | public partial class Arguments : global::System.ComponentModel.INotifyPropertyChanged 1005 | { 1006 | /// 1007 | /// Create a new Arguments object. 1008 | /// 1009 | /// Initial value of InputArguments. 1010 | /// Initial value of OutputArguments. 1011 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1012 | public static Arguments CreateArguments(global::System.Collections.ObjectModel.ObservableCollection inputArguments, global::System.Collections.ObjectModel.ObservableCollection outputArguments) 1013 | { 1014 | Arguments arguments = new Arguments(); 1015 | if ((inputArguments == null)) 1016 | { 1017 | throw new global::System.ArgumentNullException("inputArguments"); 1018 | } 1019 | arguments.InputArguments = inputArguments; 1020 | if ((outputArguments == null)) 1021 | { 1022 | throw new global::System.ArgumentNullException("outputArguments"); 1023 | } 1024 | arguments.OutputArguments = outputArguments; 1025 | return arguments; 1026 | } 1027 | /// 1028 | /// There are no comments for Property InputArguments in the schema. 1029 | /// 1030 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1031 | public global::System.Collections.ObjectModel.ObservableCollection InputArguments 1032 | { 1033 | get 1034 | { 1035 | return this._InputArguments; 1036 | } 1037 | set 1038 | { 1039 | this.OnInputArgumentsChanging(value); 1040 | this._InputArguments = value; 1041 | this.OnInputArgumentsChanged(); 1042 | this.OnPropertyChanged("InputArguments"); 1043 | } 1044 | } 1045 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1046 | private global::System.Collections.ObjectModel.ObservableCollection _InputArguments = new global::System.Collections.ObjectModel.ObservableCollection(); 1047 | partial void OnInputArgumentsChanging(global::System.Collections.ObjectModel.ObservableCollection value); 1048 | partial void OnInputArgumentsChanged(); 1049 | /// 1050 | /// There are no comments for Property OutputArguments in the schema. 1051 | /// 1052 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1053 | public global::System.Collections.ObjectModel.ObservableCollection OutputArguments 1054 | { 1055 | get 1056 | { 1057 | return this._OutputArguments; 1058 | } 1059 | set 1060 | { 1061 | this.OnOutputArgumentsChanging(value); 1062 | this._OutputArguments = value; 1063 | this.OnOutputArgumentsChanged(); 1064 | this.OnPropertyChanged("OutputArguments"); 1065 | } 1066 | } 1067 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1068 | private global::System.Collections.ObjectModel.ObservableCollection _OutputArguments = new global::System.Collections.ObjectModel.ObservableCollection(); 1069 | partial void OnOutputArgumentsChanging(global::System.Collections.ObjectModel.ObservableCollection value); 1070 | partial void OnOutputArgumentsChanged(); 1071 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1072 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1073 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1074 | protected virtual void OnPropertyChanged(string property) 1075 | { 1076 | if ((this.PropertyChanged != null)) 1077 | { 1078 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1079 | } 1080 | } 1081 | } 1082 | /// 1083 | /// There are no comments for ComplexType ACES.Models.Argument in the schema. 1084 | /// 1085 | public partial class Argument : global::System.ComponentModel.INotifyPropertyChanged 1086 | { 1087 | /// 1088 | /// Create a new Argument object. 1089 | /// 1090 | /// Initial value of Name. 1091 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1092 | public static Argument CreateArgument(string name) 1093 | { 1094 | Argument argument = new Argument(); 1095 | argument.Name = name; 1096 | return argument; 1097 | } 1098 | /// 1099 | /// There are no comments for Property Resource in the schema. 1100 | /// 1101 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1102 | public string Resource 1103 | { 1104 | get 1105 | { 1106 | return this._Resource; 1107 | } 1108 | set 1109 | { 1110 | this.OnResourceChanging(value); 1111 | this._Resource = value; 1112 | this.OnResourceChanged(); 1113 | this.OnPropertyChanged("Resource"); 1114 | } 1115 | } 1116 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1117 | private string _Resource; 1118 | partial void OnResourceChanging(string value); 1119 | partial void OnResourceChanged(); 1120 | /// 1121 | /// There are no comments for Property Name in the schema. 1122 | /// 1123 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1124 | public string Name 1125 | { 1126 | get 1127 | { 1128 | return this._Name; 1129 | } 1130 | set 1131 | { 1132 | this.OnNameChanging(value); 1133 | this._Name = value; 1134 | this.OnNameChanged(); 1135 | this.OnPropertyChanged("Name"); 1136 | } 1137 | } 1138 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1139 | private string _Name; 1140 | partial void OnNameChanging(string value); 1141 | partial void OnNameChanged(); 1142 | /// 1143 | /// There are no comments for Property Authentication in the schema. 1144 | /// 1145 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1146 | public string Authentication 1147 | { 1148 | get 1149 | { 1150 | return this._Authentication; 1151 | } 1152 | set 1153 | { 1154 | this.OnAuthenticationChanging(value); 1155 | this._Authentication = value; 1156 | this.OnAuthenticationChanged(); 1157 | this.OnPropertyChanged("Authentication"); 1158 | } 1159 | } 1160 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1161 | private string _Authentication; 1162 | partial void OnAuthenticationChanging(string value); 1163 | partial void OnAuthenticationChanged(); 1164 | /// 1165 | /// There are no comments for Property ResourceKind in the schema. 1166 | /// 1167 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1168 | public string ResourceKind 1169 | { 1170 | get 1171 | { 1172 | return this._ResourceKind; 1173 | } 1174 | set 1175 | { 1176 | this.OnResourceKindChanging(value); 1177 | this._ResourceKind = value; 1178 | this.OnResourceKindChanged(); 1179 | this.OnPropertyChanged("ResourceKind"); 1180 | } 1181 | } 1182 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1183 | private string _ResourceKind; 1184 | partial void OnResourceKindChanging(string value); 1185 | partial void OnResourceKindChanged(); 1186 | /// 1187 | /// There are no comments for Property StorageProvider in the schema. 1188 | /// 1189 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1190 | public string StorageProvider 1191 | { 1192 | get 1193 | { 1194 | return this._StorageProvider; 1195 | } 1196 | set 1197 | { 1198 | this.OnStorageProviderChanging(value); 1199 | this._StorageProvider = value; 1200 | this.OnStorageProviderChanged(); 1201 | this.OnPropertyChanged("StorageProvider"); 1202 | } 1203 | } 1204 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1205 | private string _StorageProvider; 1206 | partial void OnStorageProviderChanging(string value); 1207 | partial void OnStorageProviderChanged(); 1208 | /// 1209 | /// There are no comments for Property HttpVerb in the schema. 1210 | /// 1211 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1212 | public string HttpVerb 1213 | { 1214 | get 1215 | { 1216 | return this._HttpVerb; 1217 | } 1218 | set 1219 | { 1220 | this.OnHttpVerbChanging(value); 1221 | this._HttpVerb = value; 1222 | this.OnHttpVerbChanged(); 1223 | this.OnPropertyChanged("HttpVerb"); 1224 | } 1225 | } 1226 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1227 | private string _HttpVerb; 1228 | partial void OnHttpVerbChanging(string value); 1229 | partial void OnHttpVerbChanged(); 1230 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1231 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1232 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1233 | protected virtual void OnPropertyChanged(string property) 1234 | { 1235 | if ((this.PropertyChanged != null)) 1236 | { 1237 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1238 | } 1239 | } 1240 | } 1241 | /// 1242 | /// There are no comments for ComplexType ACES.Models.StatusDetails in the schema. 1243 | /// 1244 | public partial class StatusDetails : global::System.ComponentModel.INotifyPropertyChanged 1245 | { 1246 | /// 1247 | /// There are no comments for Property Report in the schema. 1248 | /// 1249 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1250 | public string Report 1251 | { 1252 | get 1253 | { 1254 | return this._Report; 1255 | } 1256 | set 1257 | { 1258 | this.OnReportChanging(value); 1259 | this._Report = value; 1260 | this.OnReportChanged(); 1261 | this.OnPropertyChanged("Report"); 1262 | } 1263 | } 1264 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1265 | private string _Report; 1266 | partial void OnReportChanging(string value); 1267 | partial void OnReportChanged(); 1268 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1269 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1270 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1271 | protected virtual void OnPropertyChanged(string property) 1272 | { 1273 | if ((this.PropertyChanged != null)) 1274 | { 1275 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1276 | } 1277 | } 1278 | } 1279 | /// 1280 | /// There are no comments for ComplexType ACES.Models.EntityId in the schema. 1281 | /// 1282 | public partial class EntityId : global::System.ComponentModel.INotifyPropertyChanged 1283 | { 1284 | /// 1285 | /// There are no comments for Property UserId in the schema. 1286 | /// 1287 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1288 | public string UserId 1289 | { 1290 | get 1291 | { 1292 | return this._UserId; 1293 | } 1294 | set 1295 | { 1296 | this.OnUserIdChanging(value); 1297 | this._UserId = value; 1298 | this.OnUserIdChanged(); 1299 | this.OnPropertyChanged("UserId"); 1300 | } 1301 | } 1302 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1303 | private string _UserId; 1304 | partial void OnUserIdChanging(string value); 1305 | partial void OnUserIdChanged(); 1306 | /// 1307 | /// There are no comments for Property Id in the schema. 1308 | /// 1309 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1310 | public string Id 1311 | { 1312 | get 1313 | { 1314 | return this._Id; 1315 | } 1316 | set 1317 | { 1318 | this.OnIdChanging(value); 1319 | this._Id = value; 1320 | this.OnIdChanged(); 1321 | this.OnPropertyChanged("Id"); 1322 | } 1323 | } 1324 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1325 | private string _Id; 1326 | partial void OnIdChanging(string value); 1327 | partial void OnIdChanged(); 1328 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1329 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1330 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1331 | protected virtual void OnPropertyChanged(string property) 1332 | { 1333 | if ((this.PropertyChanged != null)) 1334 | { 1335 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1336 | } 1337 | } 1338 | } 1339 | /// 1340 | /// There are no comments for ACES.Models.WorkItem in the schema. 1341 | /// 1342 | /// 1343 | /// Id 1344 | /// UserId 1345 | /// 1346 | [global::System.Data.Services.Common.EntitySetAttribute("WorkItems")] 1347 | [global::System.Data.Services.Common.DataServiceKeyAttribute("Id", "UserId")] 1348 | public partial class WorkItem : global::System.ComponentModel.INotifyPropertyChanged 1349 | { 1350 | /// 1351 | /// Create a new WorkItem object. 1352 | /// 1353 | /// Initial value of Arguments. 1354 | /// Initial value of Version. 1355 | /// Initial value of Timestamp. 1356 | /// Initial value of UserId. 1357 | /// Initial value of Id. 1358 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1359 | public static WorkItem CreateWorkItem(Arguments arguments, int version, global::System.DateTimeOffset timestamp, string userId, string ID) 1360 | { 1361 | WorkItem workItem = new WorkItem(); 1362 | if ((arguments == null)) 1363 | { 1364 | throw new global::System.ArgumentNullException("arguments"); 1365 | } 1366 | workItem.Arguments = arguments; 1367 | workItem.Version = version; 1368 | workItem.Timestamp = timestamp; 1369 | workItem.UserId = userId; 1370 | workItem.Id = ID; 1371 | return workItem; 1372 | } 1373 | /// 1374 | /// There are no comments for Property Arguments in the schema. 1375 | /// 1376 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1377 | public Arguments Arguments 1378 | { 1379 | get 1380 | { 1381 | if (((this._Arguments == null) 1382 | && (this._ArgumentsInitialized != true))) 1383 | { 1384 | this._Arguments = new Arguments(); 1385 | this._ArgumentsInitialized = true; 1386 | } 1387 | return this._Arguments; 1388 | } 1389 | set 1390 | { 1391 | this.OnArgumentsChanging(value); 1392 | this._Arguments = value; 1393 | this._ArgumentsInitialized = true; 1394 | this.OnArgumentsChanged(); 1395 | this.OnPropertyChanged("Arguments"); 1396 | } 1397 | } 1398 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1399 | private Arguments _Arguments; 1400 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1401 | private bool _ArgumentsInitialized; 1402 | partial void OnArgumentsChanging(Arguments value); 1403 | partial void OnArgumentsChanged(); 1404 | /// 1405 | /// There are no comments for Property Status in the schema. 1406 | /// 1407 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1408 | public string Status 1409 | { 1410 | get 1411 | { 1412 | return this._Status; 1413 | } 1414 | set 1415 | { 1416 | this.OnStatusChanging(value); 1417 | this._Status = value; 1418 | this.OnStatusChanged(); 1419 | this.OnPropertyChanged("Status"); 1420 | } 1421 | } 1422 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1423 | private string _Status; 1424 | partial void OnStatusChanging(string value); 1425 | partial void OnStatusChanged(); 1426 | /// 1427 | /// There are no comments for Property StatusDetails in the schema. 1428 | /// 1429 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1430 | public StatusDetails StatusDetails 1431 | { 1432 | get 1433 | { 1434 | if (((this._StatusDetails == null) 1435 | && (this._StatusDetailsInitialized != true))) 1436 | { 1437 | this._StatusDetails = new StatusDetails(); 1438 | this._StatusDetailsInitialized = true; 1439 | } 1440 | return this._StatusDetails; 1441 | } 1442 | set 1443 | { 1444 | this.OnStatusDetailsChanging(value); 1445 | this._StatusDetails = value; 1446 | this._StatusDetailsInitialized = true; 1447 | this.OnStatusDetailsChanged(); 1448 | this.OnPropertyChanged("StatusDetails"); 1449 | } 1450 | } 1451 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1452 | private StatusDetails _StatusDetails; 1453 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1454 | private bool _StatusDetailsInitialized; 1455 | partial void OnStatusDetailsChanging(StatusDetails value); 1456 | partial void OnStatusDetailsChanged(); 1457 | /// 1458 | /// There are no comments for Property AvailabilityZone in the schema. 1459 | /// 1460 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1461 | public string AvailabilityZone 1462 | { 1463 | get 1464 | { 1465 | return this._AvailabilityZone; 1466 | } 1467 | set 1468 | { 1469 | this.OnAvailabilityZoneChanging(value); 1470 | this._AvailabilityZone = value; 1471 | this.OnAvailabilityZoneChanged(); 1472 | this.OnPropertyChanged("AvailabilityZone"); 1473 | } 1474 | } 1475 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1476 | private string _AvailabilityZone; 1477 | partial void OnAvailabilityZoneChanging(string value); 1478 | partial void OnAvailabilityZoneChanged(); 1479 | /// 1480 | /// There are no comments for Property ActivityId in the schema. 1481 | /// 1482 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1483 | public EntityId ActivityId 1484 | { 1485 | get 1486 | { 1487 | if (((this._ActivityId == null) 1488 | && (this._ActivityIdInitialized != true))) 1489 | { 1490 | this._ActivityId = new EntityId(); 1491 | this._ActivityIdInitialized = true; 1492 | } 1493 | return this._ActivityId; 1494 | } 1495 | set 1496 | { 1497 | this.OnActivityIdChanging(value); 1498 | this._ActivityId = value; 1499 | this._ActivityIdInitialized = true; 1500 | this.OnActivityIdChanged(); 1501 | this.OnPropertyChanged("ActivityId"); 1502 | } 1503 | } 1504 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1505 | private EntityId _ActivityId; 1506 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1507 | private bool _ActivityIdInitialized; 1508 | partial void OnActivityIdChanging(EntityId value); 1509 | partial void OnActivityIdChanged(); 1510 | /// 1511 | /// There are no comments for Property TimeQueued in the schema. 1512 | /// 1513 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1514 | public global::System.Nullable TimeQueued 1515 | { 1516 | get 1517 | { 1518 | return this._TimeQueued; 1519 | } 1520 | set 1521 | { 1522 | this.OnTimeQueuedChanging(value); 1523 | this._TimeQueued = value; 1524 | this.OnTimeQueuedChanged(); 1525 | this.OnPropertyChanged("TimeQueued"); 1526 | } 1527 | } 1528 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1529 | private global::System.Nullable _TimeQueued; 1530 | partial void OnTimeQueuedChanging(global::System.Nullable value); 1531 | partial void OnTimeQueuedChanged(); 1532 | /// 1533 | /// There are no comments for Property TimeInputTransferStarted in the schema. 1534 | /// 1535 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1536 | public global::System.Nullable TimeInputTransferStarted 1537 | { 1538 | get 1539 | { 1540 | return this._TimeInputTransferStarted; 1541 | } 1542 | set 1543 | { 1544 | this.OnTimeInputTransferStartedChanging(value); 1545 | this._TimeInputTransferStarted = value; 1546 | this.OnTimeInputTransferStartedChanged(); 1547 | this.OnPropertyChanged("TimeInputTransferStarted"); 1548 | } 1549 | } 1550 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1551 | private global::System.Nullable _TimeInputTransferStarted; 1552 | partial void OnTimeInputTransferStartedChanging(global::System.Nullable value); 1553 | partial void OnTimeInputTransferStartedChanged(); 1554 | /// 1555 | /// There are no comments for Property TimeScriptStarted in the schema. 1556 | /// 1557 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1558 | public global::System.Nullable TimeScriptStarted 1559 | { 1560 | get 1561 | { 1562 | return this._TimeScriptStarted; 1563 | } 1564 | set 1565 | { 1566 | this.OnTimeScriptStartedChanging(value); 1567 | this._TimeScriptStarted = value; 1568 | this.OnTimeScriptStartedChanged(); 1569 | this.OnPropertyChanged("TimeScriptStarted"); 1570 | } 1571 | } 1572 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1573 | private global::System.Nullable _TimeScriptStarted; 1574 | partial void OnTimeScriptStartedChanging(global::System.Nullable value); 1575 | partial void OnTimeScriptStartedChanged(); 1576 | /// 1577 | /// There are no comments for Property TimeScriptEnded in the schema. 1578 | /// 1579 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1580 | public global::System.Nullable TimeScriptEnded 1581 | { 1582 | get 1583 | { 1584 | return this._TimeScriptEnded; 1585 | } 1586 | set 1587 | { 1588 | this.OnTimeScriptEndedChanging(value); 1589 | this._TimeScriptEnded = value; 1590 | this.OnTimeScriptEndedChanged(); 1591 | this.OnPropertyChanged("TimeScriptEnded"); 1592 | } 1593 | } 1594 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1595 | private global::System.Nullable _TimeScriptEnded; 1596 | partial void OnTimeScriptEndedChanging(global::System.Nullable value); 1597 | partial void OnTimeScriptEndedChanged(); 1598 | /// 1599 | /// There are no comments for Property TimeOutputTransferEnded in the schema. 1600 | /// 1601 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1602 | public global::System.Nullable TimeOutputTransferEnded 1603 | { 1604 | get 1605 | { 1606 | return this._TimeOutputTransferEnded; 1607 | } 1608 | set 1609 | { 1610 | this.OnTimeOutputTransferEndedChanging(value); 1611 | this._TimeOutputTransferEnded = value; 1612 | this.OnTimeOutputTransferEndedChanged(); 1613 | this.OnPropertyChanged("TimeOutputTransferEnded"); 1614 | } 1615 | } 1616 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1617 | private global::System.Nullable _TimeOutputTransferEnded; 1618 | partial void OnTimeOutputTransferEndedChanging(global::System.Nullable value); 1619 | partial void OnTimeOutputTransferEndedChanged(); 1620 | /// 1621 | /// There are no comments for Property BytesTranferredIn in the schema. 1622 | /// 1623 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1624 | public global::System.Nullable BytesTranferredIn 1625 | { 1626 | get 1627 | { 1628 | return this._BytesTranferredIn; 1629 | } 1630 | set 1631 | { 1632 | this.OnBytesTranferredInChanging(value); 1633 | this._BytesTranferredIn = value; 1634 | this.OnBytesTranferredInChanged(); 1635 | this.OnPropertyChanged("BytesTranferredIn"); 1636 | } 1637 | } 1638 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1639 | private global::System.Nullable _BytesTranferredIn; 1640 | partial void OnBytesTranferredInChanging(global::System.Nullable value); 1641 | partial void OnBytesTranferredInChanged(); 1642 | /// 1643 | /// There are no comments for Property BytesTranferredOut in the schema. 1644 | /// 1645 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1646 | public global::System.Nullable BytesTranferredOut 1647 | { 1648 | get 1649 | { 1650 | return this._BytesTranferredOut; 1651 | } 1652 | set 1653 | { 1654 | this.OnBytesTranferredOutChanging(value); 1655 | this._BytesTranferredOut = value; 1656 | this.OnBytesTranferredOutChanged(); 1657 | this.OnPropertyChanged("BytesTranferredOut"); 1658 | } 1659 | } 1660 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1661 | private global::System.Nullable _BytesTranferredOut; 1662 | partial void OnBytesTranferredOutChanging(global::System.Nullable value); 1663 | partial void OnBytesTranferredOutChanged(); 1664 | /// 1665 | /// There are no comments for Property Version in the schema. 1666 | /// 1667 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1668 | public int Version 1669 | { 1670 | get 1671 | { 1672 | return this._Version; 1673 | } 1674 | set 1675 | { 1676 | this.OnVersionChanging(value); 1677 | this._Version = value; 1678 | this.OnVersionChanged(); 1679 | this.OnPropertyChanged("Version"); 1680 | } 1681 | } 1682 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1683 | private int _Version; 1684 | partial void OnVersionChanging(int value); 1685 | partial void OnVersionChanged(); 1686 | /// 1687 | /// There are no comments for Property Timestamp in the schema. 1688 | /// 1689 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1690 | public global::System.DateTimeOffset Timestamp 1691 | { 1692 | get 1693 | { 1694 | return this._Timestamp; 1695 | } 1696 | set 1697 | { 1698 | this.OnTimestampChanging(value); 1699 | this._Timestamp = value; 1700 | this.OnTimestampChanged(); 1701 | this.OnPropertyChanged("Timestamp"); 1702 | } 1703 | } 1704 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1705 | private global::System.DateTimeOffset _Timestamp; 1706 | partial void OnTimestampChanging(global::System.DateTimeOffset value); 1707 | partial void OnTimestampChanged(); 1708 | /// 1709 | /// There are no comments for Property UserId in the schema. 1710 | /// 1711 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1712 | public string UserId 1713 | { 1714 | get 1715 | { 1716 | return this._UserId; 1717 | } 1718 | set 1719 | { 1720 | this.OnUserIdChanging(value); 1721 | this._UserId = value; 1722 | this.OnUserIdChanged(); 1723 | this.OnPropertyChanged("UserId"); 1724 | } 1725 | } 1726 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1727 | private string _UserId; 1728 | partial void OnUserIdChanging(string value); 1729 | partial void OnUserIdChanged(); 1730 | /// 1731 | /// There are no comments for Property Id in the schema. 1732 | /// 1733 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1734 | public string Id 1735 | { 1736 | get 1737 | { 1738 | return this._Id; 1739 | } 1740 | set 1741 | { 1742 | this.OnIdChanging(value); 1743 | this._Id = value; 1744 | this.OnIdChanged(); 1745 | this.OnPropertyChanged("Id"); 1746 | } 1747 | } 1748 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1749 | private string _Id; 1750 | partial void OnIdChanging(string value); 1751 | partial void OnIdChanged(); 1752 | /// 1753 | /// There are no comments for Activity in the schema. 1754 | /// 1755 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1756 | public Activity Activity 1757 | { 1758 | get 1759 | { 1760 | return this._Activity; 1761 | } 1762 | set 1763 | { 1764 | this._Activity = value; 1765 | this.OnPropertyChanged("Activity"); 1766 | } 1767 | } 1768 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1769 | private Activity _Activity; 1770 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1771 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1772 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1773 | protected virtual void OnPropertyChanged(string property) 1774 | { 1775 | if ((this.PropertyChanged != null)) 1776 | { 1777 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1778 | } 1779 | } 1780 | } 1781 | /// 1782 | /// There are no comments for ACES.Models.RemoteFile in the schema. 1783 | /// 1784 | /// 1785 | /// Resource 1786 | /// 1787 | [global::System.Data.Services.Common.DataServiceKeyAttribute("Resource")] 1788 | public partial class RemoteFile : global::System.ComponentModel.INotifyPropertyChanged 1789 | { 1790 | /// 1791 | /// Create a new RemoteFile object. 1792 | /// 1793 | /// Initial value of Version. 1794 | /// Initial value of Resource. 1795 | /// Initial value of LocalFileName. 1796 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1797 | public static RemoteFile CreateRemoteFile(int version, string resource, string localFileName) 1798 | { 1799 | RemoteFile remoteFile = new RemoteFile(); 1800 | remoteFile.Version = version; 1801 | remoteFile.Resource = resource; 1802 | remoteFile.LocalFileName = localFileName; 1803 | return remoteFile; 1804 | } 1805 | /// 1806 | /// There are no comments for Property UserId in the schema. 1807 | /// 1808 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1809 | public string UserId 1810 | { 1811 | get 1812 | { 1813 | return this._UserId; 1814 | } 1815 | set 1816 | { 1817 | this.OnUserIdChanging(value); 1818 | this._UserId = value; 1819 | this.OnUserIdChanged(); 1820 | this.OnPropertyChanged("UserId"); 1821 | } 1822 | } 1823 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1824 | private string _UserId; 1825 | partial void OnUserIdChanging(string value); 1826 | partial void OnUserIdChanged(); 1827 | /// 1828 | /// There are no comments for Property Version in the schema. 1829 | /// 1830 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1831 | public int Version 1832 | { 1833 | get 1834 | { 1835 | return this._Version; 1836 | } 1837 | set 1838 | { 1839 | this.OnVersionChanging(value); 1840 | this._Version = value; 1841 | this.OnVersionChanged(); 1842 | this.OnPropertyChanged("Version"); 1843 | } 1844 | } 1845 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1846 | private int _Version; 1847 | partial void OnVersionChanging(int value); 1848 | partial void OnVersionChanged(); 1849 | /// 1850 | /// There are no comments for Property Resource in the schema. 1851 | /// 1852 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1853 | public string Resource 1854 | { 1855 | get 1856 | { 1857 | return this._Resource; 1858 | } 1859 | set 1860 | { 1861 | this.OnResourceChanging(value); 1862 | this._Resource = value; 1863 | this.OnResourceChanged(); 1864 | this.OnPropertyChanged("Resource"); 1865 | } 1866 | } 1867 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1868 | private string _Resource; 1869 | partial void OnResourceChanging(string value); 1870 | partial void OnResourceChanged(); 1871 | /// 1872 | /// There are no comments for Property LocalFileName in the schema. 1873 | /// 1874 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1875 | public string LocalFileName 1876 | { 1877 | get 1878 | { 1879 | return this._LocalFileName; 1880 | } 1881 | set 1882 | { 1883 | this.OnLocalFileNameChanging(value); 1884 | this._LocalFileName = value; 1885 | this.OnLocalFileNameChanged(); 1886 | this.OnPropertyChanged("LocalFileName"); 1887 | } 1888 | } 1889 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1890 | private string _LocalFileName; 1891 | partial void OnLocalFileNameChanging(string value); 1892 | partial void OnLocalFileNameChanged(); 1893 | /// 1894 | /// There are no comments for RelatedFiles in the schema. 1895 | /// 1896 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1897 | public global::System.Data.Services.Client.DataServiceCollection RelatedFiles 1898 | { 1899 | get 1900 | { 1901 | return this._RelatedFiles; 1902 | } 1903 | set 1904 | { 1905 | this._RelatedFiles = value; 1906 | this.OnPropertyChanged("RelatedFiles"); 1907 | } 1908 | } 1909 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1910 | private global::System.Data.Services.Client.DataServiceCollection _RelatedFiles = new global::System.Data.Services.Client.DataServiceCollection(null, global::System.Data.Services.Client.TrackingMode.None); 1911 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1912 | public event global::System.ComponentModel.PropertyChangedEventHandler PropertyChanged; 1913 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")] 1914 | protected virtual void OnPropertyChanged(string property) 1915 | { 1916 | if ((this.PropertyChanged != null)) 1917 | { 1918 | this.PropertyChanged(this, new global::System.ComponentModel.PropertyChangedEventArgs(property)); 1919 | } 1920 | } 1921 | } 1922 | } 1923 | --------------------------------------------------------------------------------