Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Azure Batch C# library to version 5.0 #2226

Merged
merged 30 commits into from
Jul 29, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
c014933
Update documentation in C# generated protocol
matthchr May 10, 2016
a267a5e
Add script to regenerate batch protocol
matthchr May 12, 2016
5967509
Add Roslyn parser/code generation
matthchr May 16, 2016
ff5b6dc
Regenerate generated protocol with latest AutoRest
matthchr May 16, 2016
1f17784
Batch Add CommitChanges support in object model
matthchr Jun 1, 2016
d575d5d
Comment tidying
itowlson Jun 3, 2016
4a3d4b3
Regenerate Batch protocol based on newest version of AutoRest
matthchr Jun 3, 2016
24f31ee
Update to latest AutoRest and regenerate protocol
matthchr Jun 17, 2016
6555f14
Add exception comment for AddTaskCollection
matthchr Jun 20, 2016
d57a1e2
Add C# ConfigureAwaitAnalyzer for use by Batch
matthchr Jun 22, 2016
02a109b
Move Batch client to subdirectory to allow sibling build scopes
itowlson Jun 30, 2016
fdaa9b2
Azure Batch file conventions library
itowlson Jun 30, 2016
6f627f8
Add README.md for Batch
matthchr Jul 1, 2016
a72c024
Add NetworkConfiguration and update required constructors
matthchr Jul 6, 2016
cd05695
Update TaskStateMonitor and improve clarity
matthchr Jul 6, 2016
6ef3837
Updated client to support job auto failure and job auto complete.
matthew-rollitt Jul 7, 2016
1cc3fda
CloudJobIntegrationTests.cs wasn't included in the project.
matthew-rollitt Jul 12, 2016
6e07b5c
Azure Batch integration test improvements
matthchr Jul 13, 2016
d369c87
Update NuGet package version for Batch file conventions preview release
itowlson Jul 13, 2016
ce7a1cc
Update Batch nuspec for 5.0.0 release
matthchr Jul 15, 2016
8771dd7
Update PoolState.Active comments
matthchr Jul 15, 2016
32a2814
Update Batch ClientRuntime reference to be 3.3.1
matthchr Jul 15, 2016
1d6c96c
Add new Batch TaskSchedulingErrorCode
matthchr Jul 15, 2016
f7b5b57
Delete models which were accidentally added
matthchr Jul 15, 2016
416ced5
Additional utility methods for Batch file conventions
itowlson Jul 26, 2016
bfbd40e
Minor documentation fixes
matthchr Jul 26, 2016
d8d2959
Batch/feature/app pack on tasks
matthew-rollitt Jul 26, 2016
bf3eb72
Fix integration tests and delete accidentally duplicated files
matthchr Jul 27, 2016
1155bee
Add license to top of cs files
matthchr Jul 28, 2016
d83f588
Remove SequentialDirectoryStaging.cs
matthchr Jul 28, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
34 changes: 33 additions & 1 deletion src/Batch/Batch.sln → src/Batch/Client/Batch.sln
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.24720.0
VisualStudioVersion = 14.0.25123.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Batch", "Src\Batch.csproj", "{3328FBBF-9C20-4775-B367-856C09DC13BF}"
EndProject
Expand Down Expand Up @@ -40,6 +40,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ObjectModelCodeGenerator",
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ObjectModelCodeGenerator", "ObjectModelCodeGenerator", "{380D5910-2411-4E93-AE2B-1533033A8D79}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ProxyLayerParser", "ProxyLayerParser", "{686EAF74-B419-4310-AFD8-3710E8E8061F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProxyLayerParser", "Tools\ObjectModelCodeGeneration\RoslynParser\ProxyLayerParser.csproj", "{13A13BB2-684F-4A2B-BCF9-34A9F9616599}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ConfigureAwaitAnalyzer", "ConfigureAwaitAnalyzer", "{D007B9BF-D886-4B0A-87E0-AEB6EFB1390F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfigureAwaitAnalyzer", "Tools\ConfigureAwaitAnalyzer\ConfigureAwaitAnalyzer\ConfigureAwaitAnalyzer.csproj", "{48215D6D-DB21-48B8-AB03-1297A94DF696}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfigureAwaitAnalyzer.Tests", "Tools\ConfigureAwaitAnalyzer\ConfigureAwaitAnalyzer.Tests\ConfigureAwaitAnalyzer.Tests.csproj", "{5F8690AA-765A-4112-8C68-0BB00C322FDB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Net45-Debug|Any CPU = Net45-Debug|Any CPU
Expand Down Expand Up @@ -84,6 +94,23 @@ Global
{8734474A-543E-46C3-8E1B-6B37E4B97C78}.Net45-Release|Any CPU.ActiveCfg = Net45-Release|Any CPU
{8734474A-543E-46C3-8E1B-6B37E4B97C78}.Portable-Debug|Any CPU.ActiveCfg = Portable-Debug|Any CPU
{8734474A-543E-46C3-8E1B-6B37E4B97C78}.Portable-Release|Any CPU.ActiveCfg = Portable-Release|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Net45-Debug|Any CPU.ActiveCfg = Net45-Debug|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Net45-Debug|Any CPU.Build.0 = Net45-Debug|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Net45-Release|Any CPU.ActiveCfg = Net45-Release|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Net45-Release|Any CPU.Build.0 = Net45-Release|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Portable-Debug|Any CPU.ActiveCfg = Portable-Debug|Any CPU
{13A13BB2-684F-4A2B-BCF9-34A9F9616599}.Portable-Release|Any CPU.ActiveCfg = Portable-Release|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Net45-Debug|Any CPU.ActiveCfg = Net45-Debug|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Net45-Debug|Any CPU.Build.0 = Net45-Debug|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Net45-Release|Any CPU.ActiveCfg = Net45-Release|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Net45-Release|Any CPU.Build.0 = Net45-Release|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Portable-Debug|Any CPU.ActiveCfg = Portable-Debug|Any CPU
{48215D6D-DB21-48B8-AB03-1297A94DF696}.Portable-Release|Any CPU.ActiveCfg = Portable-Release|Any CPU
{5F8690AA-765A-4112-8C68-0BB00C322FDB}.Net45-Debug|Any CPU.ActiveCfg = Net45-Debug|Any CPU
{5F8690AA-765A-4112-8C68-0BB00C322FDB}.Net45-Debug|Any CPU.Build.0 = Net45-Debug|Any CPU
{5F8690AA-765A-4112-8C68-0BB00C322FDB}.Net45-Release|Any CPU.ActiveCfg = Net45-Release|Any CPU
{5F8690AA-765A-4112-8C68-0BB00C322FDB}.Portable-Debug|Any CPU.ActiveCfg = Portable-Debug|Any CPU
{5F8690AA-765A-4112-8C68-0BB00C322FDB}.Portable-Release|Any CPU.ActiveCfg = Portable-Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -105,5 +132,10 @@ Global
{64425AA2-0B20-46B6-8BC6-A4D64C1C50D0} = {CB71AF88-3513-4109-92D4-0BA8770BB454}
{8734474A-543E-46C3-8E1B-6B37E4B97C78} = {380D5910-2411-4E93-AE2B-1533033A8D79}
{380D5910-2411-4E93-AE2B-1533033A8D79} = {CB71AF88-3513-4109-92D4-0BA8770BB454}
{686EAF74-B419-4310-AFD8-3710E8E8061F} = {CB71AF88-3513-4109-92D4-0BA8770BB454}
{13A13BB2-684F-4A2B-BCF9-34A9F9616599} = {686EAF74-B419-4310-AFD8-3710E8E8061F}
{D007B9BF-D886-4B0A-87E0-AEB6EFB1390F} = {3DE96B66-463F-470B-92F2-7284A2DD022C}
{48215D6D-DB21-48B8-AB03-1297A94DF696} = {D007B9BF-D886-4B0A-87E0-AEB6EFB1390F}
{5F8690AA-765A-4112-8C68-0BB00C322FDB} = {D007B9BF-D886-4B0A-87E0-AEB6EFB1390F}
EndGlobalSection
EndGlobal
45 changes: 45 additions & 0 deletions src/Batch/Client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Azure Batch client developer guide
Batch.sln is your one stop shop for all things related to the Azure Batch C# client library. This solution file contains all of the projects affiliated with the Azure Batch client (including testing and tooling).

## Changing the Azure Batch client
Depending on the type of change you want to make, the work required varies. If you follow this process you shouldn't miss anything:

1. Update the Azure Batch Swagger specification, which resides in the [Azure/azure-rest-api-specs](https://github.com/Azure/azure-rest-api-specs) GitHub repository.
* Add new entity types into the Swagger specification.
* Add new APIs as path-verb pairs in the Swagger specification.
* Add/remove properties on existing entity types in the Swagger specification.
2. Regenerate the `src\GeneratedProtocol` folder using the steps [below](#the-srcgeneratedprotocol-folder).
3. Update the convenience layer specification file: `Tools\ObjectModelCodeGeneration\ObjectModelCodeGenerator\BatchProperties.json`.
* Add new entities that match the Swagger defined entities.
* Add/remove properties on existing entities as done in the Swagger specification.
4. Regenerate the `src\Generated` folder from the convenience layer specification file using the steps [below](#the-srcgenerated-folder).
5. Add any custom code on the `Generated` objects into `partial` classes located in the `src` directory.
* You might want to do this to add an `[Obsolete]` attribute or to add some helper factory methods.
6. If any APIs have changed, or if new APIs have been added, you must update the following places:
* The `src\IProtocolLayer.cs` interface.
* The `src\ProtocolLayer.cs` class.
* The corresponding operations class, for example `PoolOperations.cs`.
* The corresponding entity which the operation is performed on, for example `CloudPool.cs`.
7. Add tests for your new models and APIs into the correct test projects.
* `Azure.Batch.Unit.Tests` for unit tests. These tests do not have any external dependencies (they run entirely in-memory) and are used in the continuous integration job to validate checkins.
* `BatchClientIntegrationTests` for integration tests. These tests run against a live Azure Batch endpoint and do not run during CI.
* **Note:** You should prefer to add unit tests over integration tests where possible -- integration tests should be reserved for ensuring that the Batch Service accepts the Swagger requests. Testing service behavior should occur in a service test, not the client.

### The `src\GeneratedProtocol` folder
The GeneratedProtocol folder holds the code generated by the AutoRest tool from a Swagger specification. In order to regenerate this code, all you need to do is run: `RegenerateBatch.cmd <Path to Swagger file>`.

You can optionally edit the `RegenerateBatch.cmd` script to point to a newer version of AutoRest if you would like to take advantage of new AutoRest features.

### The `src\Generated` folder
This folder contains the convenience layer models for Azure Batch. It is generated from a custom tool. The custom tool reads a specification file located here: `Tools\ObjectModelCodeGeneration\ObjectModelCodeGenerator\BatchProperties.json`. The convenience layer models require more metadata than the Swagger specification provides, so this file is an extra mapping layer on top of Swagger which provides more detail. **Note:** The `BatchProperties.json` specification file just contains the entities; it doesn't have anything related to the actual APIs.

1. New entities defined in the Swagger specification have to be added here as well. See an existing entity for an example.
2. If the type or name of a property has changed in the underlying Swagger specification, it should be updated here as well.

There are a number of special flags which have meaning in the `BatchProperties.json` file. The easiest way to see a list of what flags are supported and at what level is to look at the backing code generation code:

1. For properties: `Tools\ObjectModelCodeGeneration\CodeGenerationLibrary\PropertyData.cs`
2. For types: `Tools\ObjectModelCodeGeneration\CodeGenerationLibrary\ObjectModelTypeData.cs`

Once `BatchProperties.json` is updated with your changes, mark the `ObjectModelCodeGenerator` as your startup project in Visual Studio and run it -- it will regenerate the contents of the `src\Generated` folder.

5 changes: 5 additions & 0 deletions src/Batch/Client/RegenerateBatch.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
setlocal

..\..\..\tools\autorest.gen.cmd %1 Microsoft.Azure.Batch.Protocol 0.17.0-Nightly20160629 .\src\GeneratedProtocol MICROSOFT_APACHE_NO_VERSION "-ft 1"

endlocal
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

using System;
using System.Threading;
using Microsoft.Azure.Batch.Common;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

using System;
using System.Collections;
using System.Collections.Generic;
Expand Down Expand Up @@ -72,7 +86,7 @@ internal BatchClient ParentBatchClient
/// Retrieval is non-atomic; applications are retrieved in pages during enumeration of the collection.</remarks>
public IPagedEnumerable<ApplicationSummary> ListApplicationSummaries(DetailLevel detailLevel = null, IEnumerable<BatchClientBehavior> additionalBehaviors = null)
{
// craft the bahavior manager for this call
// craft the behavior manager for this call
BehaviorManager bhMgr = new BehaviorManager(this.CustomBehaviors, additionalBehaviors);

PagedEnumerable<ApplicationSummary> enumerable = new PagedEnumerable<ApplicationSummary>(
Expand Down
21 changes: 21 additions & 0 deletions src/Batch/Client/Src/AssemblyAttributes.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

using System.Runtime.CompilerServices;

#if CODESIGN
[assembly: InternalsVisibleTo("Azure.Batch.Unit.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9")]
#else
[assembly: InternalsVisibleTo("Azure.Batch.Unit.Tests")]
#endif
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System.Diagnostics;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.

namespace Microsoft.Azure.Batch
{
using System;
Expand Down
Loading