-
Notifications
You must be signed in to change notification settings - Fork 4.5k
/
DataLakePathCreateOptions.cs
67 lines (58 loc) · 2.54 KB
/
DataLakePathCreateOptions.cs
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
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
using System;
using System.Collections.Generic;
using Metadata = System.Collections.Generic.IDictionary<string, string>;
namespace Azure.Storage.Files.DataLake.Models
{
/// <summary>
/// Optional parameters for creating a file or directory..
/// </summary>
public class DataLakePathCreateOptions
{
/// <summary>
/// Optional standard HTTP header properties that can be set for the
/// new file or directory.
/// </summary>
public PathHttpHeaders HttpHeaders { get; set; }
/// <summary>
/// Optional custom metadata to set for this file or directory.
/// </summary>
#pragma warning disable CA2227 // Collection properties should be read only
public Metadata Metadata { get; set; }
#pragma warning restore CA2227 // Collection properties should be read only
/// <summary>
/// Access options to set on the newly-created path.
/// </summary>
public DataLakeAccessOptions AccessOptions { get; set; }
/// <summary>
/// Optional. Proposed LeaseId.
/// Does not apply to directories.
/// </summary>
public string LeaseId { get; set; }
/// <summary>
/// Optional. Specifies the duration of the lease, in seconds, or specify
/// <see cref="DataLakeLeaseClient.InfiniteLeaseDuration"/> for a lease that never expires.
/// A non-infinite lease can be between 15 and 60 seconds.
/// Does not apply to directories.
/// </summary>
public TimeSpan? LeaseDuration { get; set; }
/// <summary>
/// Options for scheduling the deletion of a path.
/// </summary>
public DataLakePathScheduleDeletionOptions ScheduleDeletionOptions { get; set; }
/// <summary>
/// Optional <see cref="DataLakeRequestConditions"/> to add
/// conditions on the creation of this file or directory.
/// </summary>
public DataLakeRequestConditions Conditions { get; set; }
/// <summary>
/// Optional encryption context that can be set the file.
/// Encryption context is file metadata that is not encrypted when stored on the file.
/// The primary application of this field is to store non-encrypted data that can be used to derive the customer-provided key
/// for a file.
/// Not applicable for directories.
/// </summary>
public string EncryptionContext { get; set; }
}
}