zhaojs
2023-06-29 c6aed7b39a4e95a25e5bcac47a55ac98cb222b49
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
<?php
 
/**
 * Copyright 2019 Huawei Technologies Co.,Ltd.
 * 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 Obs\Internal\Resource;
 
class Constants {
    const ALLOWED_RESOURCE_PARAMTER_NAMES = [ 
            'acl',
            'policy',
            'torrent',
            'logging',
            'location',
            'storageinfo',
            'quota',
            'storagepolicy',
            'requestpayment',
            'versions',
            'versioning',
            'versionid',
            'uploads',
            'uploadid',
            'partnumber',
            'website',
            'notification',
            'lifecycle',
            'deletebucket',
            'delete',
            'cors',
            'restore',
            'tagging',
            'response-content-type',
            'response-content-language',
            'response-expires',
            'response-cache-control',
            'response-content-disposition',
            'response-content-encoding',
            'x-image-process',
 
            'backtosource',
            'storageclass',
            'replication',
            'append',
            'position',
            'x-oss-process'
    ];
    const ALLOWED_REQUEST_HTTP_HEADER_METADATA_NAMES = [ 
            'content-type',
            'content-md5',
            'content-length',
            'content-language',
            'expires',
            'origin',
            'cache-control',
            'content-disposition',
            'content-encoding',
            'access-control-request-method',
            'access-control-request-headers',
            'x-default-storage-class',
            'location',
            'date',
            'etag',
            'range',
            'host',
            'if-modified-since',
            'if-unmodified-since',
            'if-match',
            'if-none-match',
            'last-modified',
            'content-range',
 
            'success-action-redirect'
    ];
    const ALLOWED_RESPONSE_HTTP_HEADER_METADATA_NAMES = [ 
            'content-type',
            'content-md5',
            'content-length',
            'content-language',
            'expires',
            'origin',
            'cache-control',
            'content-disposition',
            'content-encoding',
            'x-default-storage-class',
            'location',
            'date',
            'etag',
            'host',
            'last-modified',
            'content-range',
            'x-reserved',
            'access-control-allow-origin',
            'access-control-allow-headers',
            'access-control-max-age',
            'access-control-allow-methods',
            'access-control-expose-headers',
            'connection'
    ];
    
    public static function selectConstants($signature) {
        $signature = (strcasecmp ( $signature, 'obs' ) === 0) ? 'OBS' : 'V2';
        return __NAMESPACE__ . '\\' . $signature . 'Constants';
    }
    
    public static function selectRequestResource($signature) {
        $signature = (strcasecmp ( $signature, 'obs' ) === 0) ? 'OBS' : 'V2';
        return (__NAMESPACE__ . '\\' . $signature . 'RequestResource');
    }
 
}