mirror of
https://github.com/alex-bochkov/1c-aws-s3-browser.git
synced 2024-11-24 08:22:18 +02:00
initial version
This commit is contained in:
parent
b1657d2676
commit
9b71dac929
686
Catalogs/AwsS3Bucket.xml
Normal file
686
Catalogs/AwsS3Bucket.xml
Normal file
@ -0,0 +1,686 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<Catalog uuid="7a2a8acd-7a8a-4282-92f1-385b530dfc81">
|
||||||
|
<InternalInfo>
|
||||||
|
<xr:GeneratedType name="CatalogObject.AwsS3Bucket" category="Object">
|
||||||
|
<xr:TypeId>8e4a27b2-8426-44ac-912a-89cdf895e16c</xr:TypeId>
|
||||||
|
<xr:ValueId>71a8cc28-ef43-43dd-a2cc-e9d08245457f</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="CatalogRef.AwsS3Bucket" category="Ref">
|
||||||
|
<xr:TypeId>67e12c0f-a616-42c2-904a-a7f4385f802d</xr:TypeId>
|
||||||
|
<xr:ValueId>c36bba83-25c7-45c7-937c-97c341d331c9</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="CatalogSelection.AwsS3Bucket" category="Selection">
|
||||||
|
<xr:TypeId>66b2ff41-8b2d-4230-83cf-155695eee0b6</xr:TypeId>
|
||||||
|
<xr:ValueId>3d835dae-7c58-4c72-a6b1-0c5fac928377</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="CatalogList.AwsS3Bucket" category="List">
|
||||||
|
<xr:TypeId>441fe36c-70f7-4131-8fae-051db5627ed9</xr:TypeId>
|
||||||
|
<xr:ValueId>8990cc96-99d4-4f97-9cfb-d1263820598b</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
<xr:GeneratedType name="CatalogManager.AwsS3Bucket" category="Manager">
|
||||||
|
<xr:TypeId>cb9f2f24-fd06-4e62-bae7-b8bade5fed5a</xr:TypeId>
|
||||||
|
<xr:ValueId>b646b831-7979-4b85-a512-6ad479c8e095</xr:ValueId>
|
||||||
|
</xr:GeneratedType>
|
||||||
|
</InternalInfo>
|
||||||
|
<Properties>
|
||||||
|
<Name>AwsS3Bucket</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Amazon S3 bucket</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>AWS S3 Bucket</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Hierarchical>false</Hierarchical>
|
||||||
|
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
|
||||||
|
<LimitLevelCount>false</LimitLevelCount>
|
||||||
|
<LevelCount>2</LevelCount>
|
||||||
|
<FoldersOnTop>true</FoldersOnTop>
|
||||||
|
<UseStandardCommands>true</UseStandardCommands>
|
||||||
|
<Owners/>
|
||||||
|
<SubordinationUse>ToItems</SubordinationUse>
|
||||||
|
<CodeLength>9</CodeLength>
|
||||||
|
<DescriptionLength>100</DescriptionLength>
|
||||||
|
<CodeType>String</CodeType>
|
||||||
|
<CodeAllowedLength>Variable</CodeAllowedLength>
|
||||||
|
<CodeSeries>WholeCatalog</CodeSeries>
|
||||||
|
<CheckUnique>true</CheckUnique>
|
||||||
|
<Autonumbering>true</Autonumbering>
|
||||||
|
<DefaultPresentation>AsDescription</DefaultPresentation>
|
||||||
|
<StandardAttributes>
|
||||||
|
<xr:StandardAttribute name="PredefinedDataName">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Predefined">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Ref">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="DeletionMark">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="IsFolder">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Owner">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>ShowError</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Parent">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Description">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>ShowError</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
<xr:StandardAttribute name="Code">
|
||||||
|
<xr:LinkByType/>
|
||||||
|
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||||
|
<xr:MultiLine>false</xr:MultiLine>
|
||||||
|
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||||
|
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||||
|
<xr:MaxValue xsi:nil="true"/>
|
||||||
|
<xr:ToolTip/>
|
||||||
|
<xr:ExtendedEdit>false</xr:ExtendedEdit>
|
||||||
|
<xr:Format/>
|
||||||
|
<xr:ChoiceForm/>
|
||||||
|
<xr:QuickChoice>Auto</xr:QuickChoice>
|
||||||
|
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
|
||||||
|
<xr:EditFormat/>
|
||||||
|
<xr:PasswordMode>false</xr:PasswordMode>
|
||||||
|
<xr:DataHistory>Use</xr:DataHistory>
|
||||||
|
<xr:MarkNegatives>false</xr:MarkNegatives>
|
||||||
|
<xr:MinValue xsi:nil="true"/>
|
||||||
|
<xr:Synonym/>
|
||||||
|
<xr:Comment/>
|
||||||
|
<xr:FullTextSearch>Use</xr:FullTextSearch>
|
||||||
|
<xr:ChoiceParameterLinks/>
|
||||||
|
<xr:FillValue xsi:nil="true"/>
|
||||||
|
<xr:Mask/>
|
||||||
|
<xr:ChoiceParameters/>
|
||||||
|
</xr:StandardAttribute>
|
||||||
|
</StandardAttributes>
|
||||||
|
<Characteristics/>
|
||||||
|
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
|
||||||
|
<EditType>InDialog</EditType>
|
||||||
|
<QuickChoice>false</QuickChoice>
|
||||||
|
<ChoiceMode>BothWays</ChoiceMode>
|
||||||
|
<InputByString>
|
||||||
|
<xr:Field>Catalog.AwsS3Bucket.StandardAttribute.Description</xr:Field>
|
||||||
|
<xr:Field>Catalog.AwsS3Bucket.StandardAttribute.Code</xr:Field>
|
||||||
|
</InputByString>
|
||||||
|
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
|
||||||
|
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
|
||||||
|
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
|
||||||
|
<DefaultObjectForm/>
|
||||||
|
<DefaultFolderForm/>
|
||||||
|
<DefaultListForm/>
|
||||||
|
<DefaultChoiceForm/>
|
||||||
|
<DefaultFolderChoiceForm/>
|
||||||
|
<AuxiliaryObjectForm/>
|
||||||
|
<AuxiliaryFolderForm/>
|
||||||
|
<AuxiliaryListForm/>
|
||||||
|
<AuxiliaryChoiceForm/>
|
||||||
|
<AuxiliaryFolderChoiceForm/>
|
||||||
|
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||||
|
<BasedOn/>
|
||||||
|
<DataLockFields/>
|
||||||
|
<DataLockControlMode>Managed</DataLockControlMode>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<ObjectPresentation/>
|
||||||
|
<ExtendedObjectPresentation/>
|
||||||
|
<ListPresentation>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>AWS S3 Buckets</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ListPresentation>
|
||||||
|
<ExtendedListPresentation/>
|
||||||
|
<Explanation/>
|
||||||
|
<CreateOnInput>Use</CreateOnInput>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<DataHistory>DontUse</DataHistory>
|
||||||
|
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
|
||||||
|
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
|
||||||
|
</Properties>
|
||||||
|
<ChildObjects>
|
||||||
|
<Attribute uuid="b9babddc-680a-46a5-a389-819daea0a2da">
|
||||||
|
<Properties>
|
||||||
|
<Name>BucketName</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Bucket name</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Bucket Name</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>100</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip/>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="06208216-5f20-4b31-9e6d-f0828940e7f7">
|
||||||
|
<Properties>
|
||||||
|
<Name>Region</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Region</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>AWS Region</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>15</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>for example, us-east-1</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="7d3bb951-884a-46ed-9067-f87dbdc7b7d2">
|
||||||
|
<Properties>
|
||||||
|
<Name>InitialFolder</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Initial folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Initial Folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>100</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>leave it empty to start at the root</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="c8e113df-4210-4742-97b4-2c400655932a">
|
||||||
|
<Properties>
|
||||||
|
<Name>PublicEndpoint</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Public Endpoint</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Public Endpoint</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>500</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>DNS name for publicly available bucket</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="cb8bd3dd-b319-412e-b2eb-d6c0cf3589e1">
|
||||||
|
<Properties>
|
||||||
|
<Name>MaxKeysPerRequest</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Max keys per request</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Max Keys Per Request</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:decimal</v8:Type>
|
||||||
|
<v8:NumberQualifiers>
|
||||||
|
<v8:Digits>10</v8:Digits>
|
||||||
|
<v8:FractionDigits>0</v8:FractionDigits>
|
||||||
|
<v8:AllowedSign>Any</v8:AllowedSign>
|
||||||
|
</v8:NumberQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>10-1000</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:type="xs:string">100</MinValue>
|
||||||
|
<MaxValue xsi:type="xs:string">1000</MaxValue>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:nil="true"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="5fb220f8-6dfa-4f53-ad9d-453103461bbd">
|
||||||
|
<Properties>
|
||||||
|
<Name>AccessKeyId</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Access Key ID</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>100</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip/>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute uuid="babe1ae1-8b94-44a5-8ad3-b33a9aff8ce7">
|
||||||
|
<Properties>
|
||||||
|
<Name>SecretAccessKey</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Secret Access Key</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:string</v8:Type>
|
||||||
|
<v8:StringQualifiers>
|
||||||
|
<v8:Length>100</v8:Length>
|
||||||
|
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||||
|
</v8:StringQualifiers>
|
||||||
|
</Type>
|
||||||
|
<PasswordMode>false</PasswordMode>
|
||||||
|
<Format/>
|
||||||
|
<EditFormat/>
|
||||||
|
<ToolTip/>
|
||||||
|
<MarkNegatives>false</MarkNegatives>
|
||||||
|
<Mask/>
|
||||||
|
<MultiLine>false</MultiLine>
|
||||||
|
<ExtendedEdit>false</ExtendedEdit>
|
||||||
|
<MinValue xsi:nil="true"/>
|
||||||
|
<MaxValue xsi:nil="true"/>
|
||||||
|
<FillFromFillingValue>false</FillFromFillingValue>
|
||||||
|
<FillValue xsi:type="xs:string"/>
|
||||||
|
<FillChecking>DontCheck</FillChecking>
|
||||||
|
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||||
|
<ChoiceParameterLinks/>
|
||||||
|
<ChoiceParameters/>
|
||||||
|
<QuickChoice>Auto</QuickChoice>
|
||||||
|
<CreateOnInput>Auto</CreateOnInput>
|
||||||
|
<ChoiceForm/>
|
||||||
|
<LinkByType/>
|
||||||
|
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||||
|
<Use>ForItem</Use>
|
||||||
|
<Indexing>DontIndex</Indexing>
|
||||||
|
<FullTextSearch>Use</FullTextSearch>
|
||||||
|
<DataHistory>Use</DataHistory>
|
||||||
|
</Properties>
|
||||||
|
</Attribute>
|
||||||
|
</ChildObjects>
|
||||||
|
</Catalog>
|
||||||
|
</MetaDataObject>
|
12
Catalogs/AwsS3Bucket/Ext/ObjectModule.bsl
Normal file
12
Catalogs/AwsS3Bucket/Ext/ObjectModule.bsl
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
|
||||||
|
Procedure BeforeWrite(Cancel)
|
||||||
|
|
||||||
|
If Not StrEndsWith(PublicEndpoint, "/") Then
|
||||||
|
PublicEndpoint = PublicEndpoint + "/";
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
If Not StrEndsWith(InitialFolder, "/") Then
|
||||||
|
InitialFolder = InitialFolder + "/";
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
48
ConfigDumpInfo.xml
Normal file
48
ConfigDumpInfo.xml
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ConfigDumpInfo xmlns="http://v8.1c.ru/8.3/xcf/dumpinfo" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" format="Hierarchical" version="2.13">
|
||||||
|
<ConfigVersions>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket" id="7a2a8acd-7a8a-4282-92f1-385b530dfc81" configVersion="95212c2527ead926843878e317aee6e32f8f1953">
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.Region" id="06208216-5f20-4b31-9e6d-f0828940e7f7"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.AccessKeyId" id="5fb220f8-6dfa-4f53-ad9d-453103461bbd"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.InitialFolder" id="7d3bb951-884a-46ed-9067-f87dbdc7b7d2"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.BucketName" id="b9babddc-680a-46a5-a389-819daea0a2da"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.SecretAccessKey" id="babe1ae1-8b94-44a5-8ad3-b33a9aff8ce7"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.PublicEndpoint" id="c8e113df-4210-4742-97b4-2c400655932a"/>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.Attribute.MaxKeysPerRequest" id="cb8bd3dd-b319-412e-b2eb-d6c0cf3589e1"/>
|
||||||
|
</Metadata>
|
||||||
|
<Metadata name="Catalog.AwsS3Bucket.ObjectModule" id="7a2a8acd-7a8a-4282-92f1-385b530dfc81.0" configVersion="368a0f819f855d18cbba7d05f0efa99ed96d675f"/>
|
||||||
|
<Metadata name="Configuration.AwsS3Browser" id="c34ffcdf-b7f6-488d-9dc1-728967f9bd10" configVersion="e891eca5aff40ff41d5beeeabd873d578bbff20a"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser" id="8f3467a1-e7a7-4f78-920d-58358b34d4a0" configVersion="7ccfb07ff3aad7e212cd342d45bcdd5b70386164">
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.Region" id="0fb2750a-e409-40c6-bc98-82b8786dc48e"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.RequestText" id="1085edf4-7628-4008-b7e0-f856b67dacc0"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.RequestLogs" id="1c6921dc-cee2-4656-bc87-a5ee4da5c06c"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.StorageClass" id="289faa04-9d20-4b3b-9e21-fceacd9b40cf"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.ObjectShortName" id="3d63d12c-6c91-436d-93a0-2d94f5d16b6c"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.Key" id="4efc7590-f22c-4d20-98a7-17850d0bb326"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.ResponseText" id="7d3d7553-e39f-44c5-90f6-199fac506d6c"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects" id="811cd66d-1ac4-4e1a-a731-e879963c7df2"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.RequestLogs.Attribute.Request" id="8a63be59-3e28-4625-bb10-e4c4eac72ae9"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.Size" id="8a825f66-f8b5-4f65-baaf-30c61838f6d0"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.m_NextContinuationToken" id="8b907fb2-c582-4a27-bd07-b14d65af10d7"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.MaxKeysPerRequest" id="8dc99bd0-dd6e-4819-a654-3d7b546eea25"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.PublicEndpoint" id="8e55cc8d-3c6e-4db3-b53e-e4292cfac595"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.RequestLogs.Attribute.Date" id="8f300dbd-1c9f-4ad6-bb13-e8d731f48011"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.m_IsTruncated" id="a521767a-aef4-4c44-b474-3f4b8c9bba51"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.LastModified" id="ac3f0f53-33dd-4451-9c62-2c13d7212c16"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.isFolder" id="b07ea5b4-18c7-4479-981d-b401f5b42ab1"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.RequestLogs.Attribute.Response" id="b5402ec4-03ae-4005-bf9b-f2b3bbc384fb"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.BucketObjects.Attribute.ETag" id="b850e0df-613a-4661-bc3a-339a17e45eac"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.m_Prefix" id="bc6f5c7d-0c01-44f0-ab38-a6929e88b112"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.SecretKey" id="c4ef227b-0aa4-4590-bce7-a8a0f382489c"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.AccessKey" id="cf88e5c5-0c09-45c1-a331-206dd382c959"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.Service" id="e7a35d02-b9c1-446b-b641-1562ba81de44"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.BucketName" id="e869cdd3-48c7-44c5-8d22-ab8ad28825d8"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.TabularSection.RequestLogs.Attribute.StatusCode" id="ed1c616e-2e73-469c-ba08-71ab91e14c83"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Attribute.Bucket" id="f2e98bab-7609-465b-be88-f5c297e37c5f"/>
|
||||||
|
</Metadata>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Form.Form" id="d22eb16d-b384-4dc1-b649-d185990be62f" configVersion="419608e84a6482f6fc54aaeebdeb36426ad62136"/>
|
||||||
|
<Metadata name="DataProcessor.AwsS3Browser.Form.Form.Form" id="d22eb16d-b384-4dc1-b649-d185990be62f.0" configVersion="bd0f730b94d45d928b617b073e779debf88a8eb4"/>
|
||||||
|
<Metadata name="Language.Русский" id="ab579006-f582-4f94-8065-312326331e05" configVersion="3afebd240b7f80dc333f52ced77652135d43467d"/>
|
||||||
|
<Metadata name="Role.S3_ОсновнаяРоль" id="15b5d659-1a77-4c3f-a005-b022aa485cc1" configVersion="c35e8d413ef7c46491f8b98823c43b581ed8403a"/>
|
||||||
|
</ConfigVersions>
|
||||||
|
</ConfigDumpInfo>
|
73
Configuration.xml
Normal file
73
Configuration.xml
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<Configuration uuid="c34ffcdf-b7f6-488d-9dc1-728967f9bd10">
|
||||||
|
<InternalInfo>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>9cd510cd-abfc-11d4-9434-004095e12fc7</xr:ClassId>
|
||||||
|
<xr:ObjectId>74cca5d4-70d2-4bd7-9f95-89d706a2aac4</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>9fcd25a0-4822-11d4-9414-008048da11f9</xr:ClassId>
|
||||||
|
<xr:ObjectId>3b20018b-8774-4983-a115-527592bdad9c</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>e3687481-0a87-462c-a166-9f34594f9bba</xr:ClassId>
|
||||||
|
<xr:ObjectId>d890f221-1c57-4542-ac03-c8277387e1b8</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>9de14907-ec23-4a07-96f0-85521cb6b53b</xr:ClassId>
|
||||||
|
<xr:ObjectId>0b7c9f62-ea75-43c9-9cab-3e00afa6ef35</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>51f2d5d8-ea4d-4064-8892-82951750031e</xr:ClassId>
|
||||||
|
<xr:ObjectId>cf98999e-665e-4991-870f-4e205463e3d1</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>e68182ea-4237-4383-967f-90c1e3370bc7</xr:ClassId>
|
||||||
|
<xr:ObjectId>e4e2b8a1-5d06-48e6-8fa6-efa3688261a5</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
<xr:ContainedObject>
|
||||||
|
<xr:ClassId>fb282519-d103-4dd3-bc12-cb271d631dfc</xr:ClassId>
|
||||||
|
<xr:ObjectId>ced96218-bde1-45c6-9732-29259c10e30a</xr:ObjectId>
|
||||||
|
</xr:ContainedObject>
|
||||||
|
</InternalInfo>
|
||||||
|
<Properties>
|
||||||
|
<Name>AwsS3Browser</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>AWS S3 Browser</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<ConfigurationExtensionPurpose>AddOn</ConfigurationExtensionPurpose>
|
||||||
|
<ObjectBelonging>Adopted</ObjectBelonging>
|
||||||
|
<KeepMappingToExtendedConfigurationObjectsByIDs>true</KeepMappingToExtendedConfigurationObjectsByIDs>
|
||||||
|
<NamePrefix>S3_</NamePrefix>
|
||||||
|
<ConfigurationExtensionCompatibilityMode>Version8_3_14</ConfigurationExtensionCompatibilityMode>
|
||||||
|
<DefaultRunMode>ManagedApplication</DefaultRunMode>
|
||||||
|
<UsePurposes>
|
||||||
|
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
||||||
|
</UsePurposes>
|
||||||
|
<ScriptVariant>English</ScriptVariant>
|
||||||
|
<DefaultRoles>
|
||||||
|
<xr:Item xsi:type="xr:MDObjectRef">Role.S3_ОсновнаяРоль</xr:Item>
|
||||||
|
</DefaultRoles>
|
||||||
|
<Vendor/>
|
||||||
|
<Version/>
|
||||||
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||||
|
<BriefInformation/>
|
||||||
|
<DetailedInformation/>
|
||||||
|
<Copyright/>
|
||||||
|
<VendorInformationAddress/>
|
||||||
|
<ConfigurationInformationAddress/>
|
||||||
|
<InterfaceCompatibilityMode>TaxiEnableVersion8_2</InterfaceCompatibilityMode>
|
||||||
|
</Properties>
|
||||||
|
<ChildObjects>
|
||||||
|
<Language>Русский</Language>
|
||||||
|
<Role>S3_ОсновнаяРоль</Role>
|
||||||
|
<Catalog>AwsS3Bucket</Catalog>
|
||||||
|
<DataProcessor>AwsS3Browser</DataProcessor>
|
||||||
|
</ChildObjects>
|
||||||
|
</Configuration>
|
||||||
|
</MetaDataObject>
|
1112
DataProcessors/AwsS3Browser.xml
Normal file
1112
DataProcessors/AwsS3Browser.xml
Normal file
File diff suppressed because it is too large
Load Diff
22
DataProcessors/AwsS3Browser/Forms/Form.xml
Normal file
22
DataProcessors/AwsS3Browser/Forms/Form.xml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<Form uuid="d22eb16d-b384-4dc1-b649-d185990be62f">
|
||||||
|
<Properties>
|
||||||
|
<Name>Form</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Form</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<FormType>Managed</FormType>
|
||||||
|
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||||
|
<UsePurposes>
|
||||||
|
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
||||||
|
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
|
||||||
|
</UsePurposes>
|
||||||
|
<ExtendedPresentation/>
|
||||||
|
</Properties>
|
||||||
|
</Form>
|
||||||
|
</MetaDataObject>
|
478
DataProcessors/AwsS3Browser/Forms/Form/Ext/Form.xml
Normal file
478
DataProcessors/AwsS3Browser/Forms/Form/Ext/Form.xml
Normal file
@ -0,0 +1,478 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<AutoCommandBar name="FormCommandBar" id="-1">
|
||||||
|
<Autofill>false</Autofill>
|
||||||
|
</AutoCommandBar>
|
||||||
|
<Events>
|
||||||
|
<Event name="OnCreateAtServer">OnCreateAtServer</Event>
|
||||||
|
</Events>
|
||||||
|
<ChildItems>
|
||||||
|
<InputField name="Bucket" id="67">
|
||||||
|
<DataPath>Object.Bucket</DataPath>
|
||||||
|
<QuickChoice>true</QuickChoice>
|
||||||
|
<ContextMenu name="BucketContextMenu" id="68"/>
|
||||||
|
<ExtendedTooltip name="BucketExtendedTooltip" id="69"/>
|
||||||
|
<Events>
|
||||||
|
<Event name="OnChange">BucketOnChange</Event>
|
||||||
|
</Events>
|
||||||
|
</InputField>
|
||||||
|
<Pages name="GroupPages" id="9">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group pages</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group pages</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<PagesRepresentation>TabsOnTop</PagesRepresentation>
|
||||||
|
<ExtendedTooltip name="GroupPagesExtendedTooltip" id="10"/>
|
||||||
|
<ChildItems>
|
||||||
|
<Page name="GroupBucketObjects" id="11">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Bucket Objects</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Bucket Content</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group bucket objects</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<ExtendedTooltip name="GroupBucketObjectsExtendedTooltip" id="12"/>
|
||||||
|
<ChildItems>
|
||||||
|
<UsualGroup name="GroupStatus" id="54">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group status</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group status</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Behavior>Usual</Behavior>
|
||||||
|
<Representation>None</Representation>
|
||||||
|
<ShowTitle>false</ShowTitle>
|
||||||
|
<ExtendedTooltip name="GroupStatusExtendedTooltip" id="55"/>
|
||||||
|
<ChildItems>
|
||||||
|
<InputField name="m_Prefix" id="56">
|
||||||
|
<DataPath>Object.m_Prefix</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Current Folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ContextMenu name="m_PrefixContextMenu" id="57"/>
|
||||||
|
<ExtendedTooltip name="m_PrefixExtendedTooltip" id="58"/>
|
||||||
|
</InputField>
|
||||||
|
</ChildItems>
|
||||||
|
</UsualGroup>
|
||||||
|
<Table name="BucketObjects" id="13">
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<ChangeRowSet>false</ChangeRowSet>
|
||||||
|
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||||
|
<EnableStartDrag>true</EnableStartDrag>
|
||||||
|
<EnableDrag>true</EnableDrag>
|
||||||
|
<DataPath>Object.BucketObjects</DataPath>
|
||||||
|
<RowFilter xsi:nil="true"/>
|
||||||
|
<ContextMenu name="BucketObjectsContextMenu" id="14"/>
|
||||||
|
<AutoCommandBar name="BucketObjectsCommandBar" id="15">
|
||||||
|
<Autofill>false</Autofill>
|
||||||
|
<ChildItems>
|
||||||
|
<Button name="ListObjects" id="1">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<Representation>Picture</Representation>
|
||||||
|
<CommandName>Form.Command.RefreshList</CommandName>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.Refresh</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<ExtendedTooltip name="ListObjectsExtendedTooltip" id="2"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsReturnOneLevelUp" id="52">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<Representation>PictureAndText</Representation>
|
||||||
|
<CommandName>Form.Command.ReturnOneLevelUp</CommandName>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.LevelUp</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<ExtendedTooltip name="BucketObjectsReturnOneLevelUpExtendedTooltip" id="53"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsSortListAsc" id="59">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Item.BucketObjects.StandardCommand.SortListAsc</CommandName>
|
||||||
|
<LocationInCommandBar>InCommandBar</LocationInCommandBar>
|
||||||
|
<ExtendedTooltip name="BucketObjectsSortListAscExtendedTooltip" id="60"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsSortListDesc" id="61">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Item.BucketObjects.StandardCommand.SortListDesc</CommandName>
|
||||||
|
<LocationInCommandBar>InCommandBar</LocationInCommandBar>
|
||||||
|
<ExtendedTooltip name="BucketObjectsSortListDescExtendedTooltip" id="62"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsCreateNewFolder" id="63">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.CreateNewFolder</CommandName>
|
||||||
|
<ExtendedTooltip name="BucketObjectsCreateNewFolderExtendedTooltip" id="64"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsUploadNewFile" id="65">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.UploadNewFile</CommandName>
|
||||||
|
<ExtendedTooltip name="BucketObjectsUploadNewFileExtendedTooltip" id="66"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsDeleteObject" id="102">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.DeleteObject</CommandName>
|
||||||
|
<ExtendedTooltip name="BucketObjectsDeleteObjectExtendedTooltip" id="103"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsContextMenuOpenInBrowser" id="70">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.OpenInBrowser</CommandName>
|
||||||
|
<ExtendedTooltip name="BucketObjectsContextMenuOpenInBrowserExtendedTooltip" id="71"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="BucketObjectsOutputList" id="100">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Item.BucketObjects.StandardCommand.OutputList</CommandName>
|
||||||
|
<ExtendedTooltip name="BucketObjectsOutputListExtendedTooltip" id="101"/>
|
||||||
|
</Button>
|
||||||
|
</ChildItems>
|
||||||
|
</AutoCommandBar>
|
||||||
|
<ExtendedTooltip name="BucketObjectsExtendedTooltip" id="16"/>
|
||||||
|
<SearchStringAddition name="BucketObjectsSearchString" id="17">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>BucketObjects</Item>
|
||||||
|
<Type>SearchStringRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="BucketObjectsSearchStringContextMenu" id="18"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsSearchStringExtendedTooltip" id="19"/>
|
||||||
|
</SearchStringAddition>
|
||||||
|
<ViewStatusAddition name="BucketObjectsViewStatus" id="20">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>BucketObjects</Item>
|
||||||
|
<Type>ViewStatusRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="BucketObjectsViewStatusContextMenu" id="21"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsViewStatusExtendedTooltip" id="22"/>
|
||||||
|
</ViewStatusAddition>
|
||||||
|
<SearchControlAddition name="BucketObjectsSearchControl" id="23">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>BucketObjects</Item>
|
||||||
|
<Type>SearchControl</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="BucketObjectsSearchControlContextMenu" id="24"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsSearchControlExtendedTooltip" id="25"/>
|
||||||
|
</SearchControlAddition>
|
||||||
|
<Events>
|
||||||
|
<Event name="Selection">BucketObjectsSelection</Event>
|
||||||
|
</Events>
|
||||||
|
<ChildItems>
|
||||||
|
<LabelField name="BucketObjectsLineNumber" id="26">
|
||||||
|
<DataPath>Object.BucketObjects.LineNumber</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<Width>1</Width>
|
||||||
|
<ContextMenu name="BucketObjectsLineNumberContextMenu" id="27"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsLineNumberExtendedTooltip" id="28"/>
|
||||||
|
</LabelField>
|
||||||
|
<PictureField name="BucketObjectsisFolder" id="29">
|
||||||
|
<DataPath>Object.BucketObjects.isFolder</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<TitleLocation>None</TitleLocation>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ValuesPicture>
|
||||||
|
<xr:Ref>StdPicture.DocumentJournal</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</ValuesPicture>
|
||||||
|
<ContextMenu name="BucketObjectsisFolderContextMenu" id="30"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsisFolderExtendedTooltip" id="31"/>
|
||||||
|
</PictureField>
|
||||||
|
<InputField name="BucketObjectsObjectShortName" id="32">
|
||||||
|
<DataPath>Object.BucketObjects.ObjectShortName</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsObjectShortNameContextMenu" id="33"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsObjectShortNameExtendedTooltip" id="34"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="BucketObjectsLastModified" id="35">
|
||||||
|
<DataPath>Object.BucketObjects.LastModified</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsLastModifiedContextMenu" id="36"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsLastModifiedExtendedTooltip" id="37"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="BucketObjectsETag" id="38">
|
||||||
|
<DataPath>Object.BucketObjects.ETag</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsETagContextMenu" id="39"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsETagExtendedTooltip" id="40"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="BucketObjectsSize" id="41">
|
||||||
|
<DataPath>Object.BucketObjects.Size</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsSizeContextMenu" id="42"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsSizeExtendedTooltip" id="43"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="BucketObjectsStorageClass" id="44">
|
||||||
|
<DataPath>Object.BucketObjects.StorageClass</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsStorageClassContextMenu" id="45"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsStorageClassExtendedTooltip" id="46"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="BucketObjectsKey" id="47">
|
||||||
|
<DataPath>Object.BucketObjects.Key</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="BucketObjectsKeyContextMenu" id="48"/>
|
||||||
|
<ExtendedTooltip name="BucketObjectsKeyExtendedTooltip" id="49"/>
|
||||||
|
</InputField>
|
||||||
|
</ChildItems>
|
||||||
|
</Table>
|
||||||
|
</ChildItems>
|
||||||
|
</Page>
|
||||||
|
<Page name="GroupRequestLog" id="50">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Request Logs</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Request Logs</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Group request log</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<ExtendedTooltip name="GroupRequestLogExtendedTooltip" id="51"/>
|
||||||
|
<ChildItems>
|
||||||
|
<Table name="RequestLogs" id="72">
|
||||||
|
<Representation>List</Representation>
|
||||||
|
<ChangeRowSet>false</ChangeRowSet>
|
||||||
|
<ChangeRowOrder>false</ChangeRowOrder>
|
||||||
|
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||||
|
<EnableStartDrag>true</EnableStartDrag>
|
||||||
|
<EnableDrag>true</EnableDrag>
|
||||||
|
<DataPath>Object.RequestLogs</DataPath>
|
||||||
|
<RowFilter xsi:nil="true"/>
|
||||||
|
<ContextMenu name="RequestLogsContextMenu" id="73"/>
|
||||||
|
<AutoCommandBar name="RequestLogsCommandBar" id="74"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsExtendedTooltip" id="75"/>
|
||||||
|
<SearchStringAddition name="RequestLogsSearchString" id="76">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>RequestLogs</Item>
|
||||||
|
<Type>SearchStringRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="RequestLogsSearchStringContextMenu" id="77"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsSearchStringExtendedTooltip" id="78"/>
|
||||||
|
</SearchStringAddition>
|
||||||
|
<ViewStatusAddition name="RequestLogsViewStatus" id="79">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>RequestLogs</Item>
|
||||||
|
<Type>ViewStatusRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="RequestLogsViewStatusContextMenu" id="80"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsViewStatusExtendedTooltip" id="81"/>
|
||||||
|
</ViewStatusAddition>
|
||||||
|
<SearchControlAddition name="RequestLogsSearchControl" id="82">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>RequestLogs</Item>
|
||||||
|
<Type>SearchControl</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="RequestLogsSearchControlContextMenu" id="83"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsSearchControlExtendedTooltip" id="84"/>
|
||||||
|
</SearchControlAddition>
|
||||||
|
<ChildItems>
|
||||||
|
<LabelField name="RequestLogsLineNumber" id="85">
|
||||||
|
<DataPath>Object.RequestLogs.LineNumber</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="RequestLogsLineNumberContextMenu" id="86"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsLineNumberExtendedTooltip" id="87"/>
|
||||||
|
</LabelField>
|
||||||
|
<InputField name="RequestLogsDate" id="88">
|
||||||
|
<DataPath>Object.RequestLogs.Date</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="RequestLogsDateContextMenu" id="89"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsDateExtendedTooltip" id="90"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="RequestLogsStatusCode" id="91">
|
||||||
|
<DataPath>Object.RequestLogs.StatusCode</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="RequestLogsStatusCodeContextMenu" id="92"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsStatusCodeExtendedTooltip" id="93"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="RequestLogsRequest" id="94">
|
||||||
|
<DataPath>Object.RequestLogs.Request</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="RequestLogsRequestContextMenu" id="95"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsRequestExtendedTooltip" id="96"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="RequestLogsResponse" id="97">
|
||||||
|
<DataPath>Object.RequestLogs.Response</DataPath>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="RequestLogsResponseContextMenu" id="98"/>
|
||||||
|
<ExtendedTooltip name="RequestLogsResponseExtendedTooltip" id="99"/>
|
||||||
|
</InputField>
|
||||||
|
</ChildItems>
|
||||||
|
</Table>
|
||||||
|
</ChildItems>
|
||||||
|
</Page>
|
||||||
|
</ChildItems>
|
||||||
|
</Pages>
|
||||||
|
</ChildItems>
|
||||||
|
<Attributes>
|
||||||
|
<Attribute name="Object" id="1">
|
||||||
|
<Type>
|
||||||
|
<v8:Type>cfg:DataProcessorObject.AwsS3Browser</v8:Type>
|
||||||
|
</Type>
|
||||||
|
<MainAttribute>true</MainAttribute>
|
||||||
|
</Attribute>
|
||||||
|
</Attributes>
|
||||||
|
<Commands>
|
||||||
|
<Command name="RefreshList" id="1">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Refresh</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Refresh</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Refresh list</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Action>ListObjects</Action>
|
||||||
|
</Command>
|
||||||
|
<Command name="ReturnOneLevelUp" id="2">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Go Back Up</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Go Back Up</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Return one level up</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Action>ReturnOneLevelUp</Action>
|
||||||
|
</Command>
|
||||||
|
<Command name="CreateNewFolder" id="3">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>New Folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>New Folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Create new folder</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.CreateFolder</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>CreateNewFolder</Action>
|
||||||
|
<Representation>TextPicture</Representation>
|
||||||
|
</Command>
|
||||||
|
<Command name="UploadNewFile" id="4">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Upload New File</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Upload New File</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Upload new file</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.CreateListItem</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>UploadNewFile</Action>
|
||||||
|
<Representation>TextPicture</Representation>
|
||||||
|
</Command>
|
||||||
|
<Command name="OpenInBrowser" id="5">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Open in browser</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Open In Browser</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Open in browser</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.GotoExternalURL</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>OpenInBrowser</Action>
|
||||||
|
<Representation>TextPicture</Representation>
|
||||||
|
</Command>
|
||||||
|
<Command name="DeleteObject" id="6">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Delete</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Delete object</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.Delete</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>DeleteObject</Action>
|
||||||
|
<Representation>TextPicture</Representation>
|
||||||
|
</Command>
|
||||||
|
</Commands>
|
||||||
|
</Form>
|
485
DataProcessors/AwsS3Browser/Forms/Form/Ext/Form/Module.bsl
Normal file
485
DataProcessors/AwsS3Browser/Forms/Form/Ext/Form/Module.bsl
Normal file
@ -0,0 +1,485 @@
|
|||||||
|
#Region HMAC_SHA256
|
||||||
|
|
||||||
|
Function Hash(BinaryData, Type)
|
||||||
|
|
||||||
|
HashingObj = New DataHashing(Type);
|
||||||
|
HashingObj.Append(BinaryData);
|
||||||
|
|
||||||
|
Return HashingObj.HashSum;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function HashFromFile(FileName, Type)
|
||||||
|
|
||||||
|
HashingObj = New DataHashing(Type);
|
||||||
|
HashingObj.AppendFile(FileName);
|
||||||
|
|
||||||
|
Return HashingObj.HashSum;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function HMAC(Val KeyValue, Val Data, Type, BlockSize)
|
||||||
|
|
||||||
|
If KeyValue.Size() > BlockSize Then
|
||||||
|
KeyValue = Hash(KeyValue, Type);
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
If KeyValue.Size() < BlockSize Then
|
||||||
|
KeyValue = GetHexStringFromBinaryData(KeyValue);
|
||||||
|
KeyValue = Left(KeyValue + RepeatString("00", BlockSize), BlockSize * 2);
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
KeyValue = GetBinaryDataBufferFromBinaryData(GetBinaryDataFromHexString(KeyValue));
|
||||||
|
|
||||||
|
ipad = GetBinaryDataBufferFromHexString(RepeatString("36", BlockSize));
|
||||||
|
opad = GetBinaryDataBufferFromHexString(RepeatString("5c", BlockSize));
|
||||||
|
|
||||||
|
ipad.WriteBitwiseXor(0, KeyValue);
|
||||||
|
ikeypad = GetBinaryDataFromBinaryDataBuffer(ipad);
|
||||||
|
|
||||||
|
opad.WriteBitwiseXor(0, KeyValue);
|
||||||
|
okeypad = GetBinaryDataFromBinaryDataBuffer(opad);
|
||||||
|
|
||||||
|
Return Hash(CombineBinaryData(okeypad, Hash(CombineBinaryData(ikeypad, Data), Type)), Type);
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function CombineBinaryData(BinaryData1, BinaryData2)
|
||||||
|
|
||||||
|
BinaryArray = New Array;
|
||||||
|
BinaryArray.Add(BinaryData1);
|
||||||
|
BinaryArray.Add(BinaryData2);
|
||||||
|
|
||||||
|
Return ConcatBinaryData(BinaryArray);
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function RepeatString(String, Count)
|
||||||
|
|
||||||
|
Parts = New Array(Count);
|
||||||
|
For i = 1 To Count Do
|
||||||
|
Parts.Add(String);
|
||||||
|
EndDo;
|
||||||
|
|
||||||
|
Return StrConcat(Parts, "");
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function HMACSHA256(Val Key, Val Data)
|
||||||
|
|
||||||
|
Return HMAC(Key, Data, HashFunction.SHA256, 64);
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
Function GetSignatureKey(key, dateStamp, regionName, serviceName)
|
||||||
|
|
||||||
|
kSecret = GetBinaryDataFromString("AWS4" + key);
|
||||||
|
kDate = HMACSHA256(kSecret, GetBinaryDataFromString(dateStamp));
|
||||||
|
kRegion = HMACSHA256(kDate, GetBinaryDataFromString(regionName));
|
||||||
|
kService = HMACSHA256(kRegion, GetBinaryDataFromString(serviceName));
|
||||||
|
kSigning = HMACSHA256(kService, GetBinaryDataFromString("aws4_request"));
|
||||||
|
|
||||||
|
Return kSigning;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
|
#EndRegion
|
||||||
|
|
||||||
|
#Region AWS_Request
|
||||||
|
&AtServer
|
||||||
|
Procedure ParseXmlResponse(ResponseText)
|
||||||
|
|
||||||
|
Object.BucketObjects.Clear();
|
||||||
|
|
||||||
|
XMLReader = New XMLReader;
|
||||||
|
XMLReader.SetString(ResponseText);
|
||||||
|
|
||||||
|
Obj = XDTOFactory.ReadXML(XMLReader);
|
||||||
|
|
||||||
|
Object.m_IsTruncated = Boolean(Obj.IsTruncated);
|
||||||
|
If Object.m_IsTruncated Then
|
||||||
|
Object.m_NextContinuationToken = Obj.NextContinuationToken;
|
||||||
|
Else
|
||||||
|
Object.m_NextContinuationToken = "";
|
||||||
|
EndIf;
|
||||||
|
If TypeOf(Obj.Prefix) = Type("String") Then
|
||||||
|
Object.m_Prefix = Obj.Prefix;
|
||||||
|
Else
|
||||||
|
Object.m_Prefix = ""
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
If Not Obj.Properties().Get("CommonPrefixes") = Undefined Then
|
||||||
|
|
||||||
|
If TypeOf(Obj.CommonPrefixes) = Type("XDTODataObject") Then
|
||||||
|
Array = New Array;
|
||||||
|
Array.Add(Obj.CommonPrefixes);
|
||||||
|
Else
|
||||||
|
Array = Obj.CommonPrefixes;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
For Each CommonPrefix in Array Do
|
||||||
|
NewRow = Object.BucketObjects.Add();
|
||||||
|
NewRow.isFolder = True;
|
||||||
|
NewRow.Key = CommonPrefix.Prefix;
|
||||||
|
NewRow.ObjectShortName = Mid(CommonPrefix.Prefix, StrLen(Object.m_Prefix) + 1);
|
||||||
|
EndDo;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
If Not Obj.Properties().Get("Contents") = Undefined Then
|
||||||
|
|
||||||
|
If TypeOf(Obj.Contents) = Type("XDTODataObject") Then
|
||||||
|
Array = New Array;
|
||||||
|
Array.Add(Obj.Contents);
|
||||||
|
Else
|
||||||
|
Array = Obj.Contents;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
For Each Content in Array Do
|
||||||
|
NewRow = Object.BucketObjects.Add();
|
||||||
|
NewRow.isFolder = False;
|
||||||
|
NewRow.Key = Content.Key;
|
||||||
|
NewRow.LastModified = XMLValue(Type("Date"), Content.LastModified);
|
||||||
|
NewRow.ETag = Content.ETag;
|
||||||
|
NewRow.Size = Content.Size;
|
||||||
|
NewRow.StorageClass = Content.StorageClass;
|
||||||
|
NewRow.ObjectShortName = Mid(Content.Key, StrLen(Object.m_Prefix) + 1);
|
||||||
|
EndDo;
|
||||||
|
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
Object.BucketObjects.Sort("isFolder DESC, Key");
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure ListObjectsAtServer(Prefix)
|
||||||
|
|
||||||
|
ExecuteCommand("ListFiles", Prefix);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure ExecuteCommand(Command, CurrentPrefix, LocalFilePath = Undefined, FileContentType = Undefined)
|
||||||
|
|
||||||
|
HostS3 = "s3.amazonaws.com";
|
||||||
|
AbsolutePath = "/" + Object.BucketName + "/";
|
||||||
|
|
||||||
|
contentHash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"; //empty string
|
||||||
|
contentType = ""; //"text/plain";
|
||||||
|
verb = "GET";
|
||||||
|
|
||||||
|
Prefix = StrReplace(EncodeString(CurrentPrefix, StringEncodingMethod.URLEncoding), "%2F", "/");
|
||||||
|
PrefixEncoded = EncodeString(CurrentPrefix, StringEncodingMethod.URLEncoding);
|
||||||
|
|
||||||
|
queryParams = "delimiter=%2F&list-type=2&max-keys=" + Object.MaxKeysPerRequest + "&prefix=" + PrefixEncoded;
|
||||||
|
|
||||||
|
uri = AbsolutePath + "?delimiter=/&list-type=2&max-keys=" + Object.MaxKeysPerRequest + "&prefix=" + Prefix;
|
||||||
|
|
||||||
|
If Command = "UploadFile" Then
|
||||||
|
|
||||||
|
verb = "PUT";
|
||||||
|
queryParams = "";
|
||||||
|
uri = AbsolutePath + CurrentPrefix;
|
||||||
|
AbsolutePath = uri;
|
||||||
|
|
||||||
|
If Not FileContentType = Undefined Then
|
||||||
|
contentType = FileContentType;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
If Not LocalFilePath = Undefined Then
|
||||||
|
contentHash = Lower(GetHexStringFromBinaryData(HashFromFile(LocalFilePath, HashFunction.SHA256)));
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
ElsIf Command = "DeleteFile" Then
|
||||||
|
|
||||||
|
verb = "DELETE";
|
||||||
|
queryParams = "";
|
||||||
|
uri = AbsolutePath + CurrentPrefix;
|
||||||
|
AbsolutePath = uri;
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
date = Format(CurrentUniversalDate(), "DF=yyyyMMddTHHmmssZ");
|
||||||
|
dateStamp = Format(CurrentUniversalDate(), "DF=yyyyMMdd");
|
||||||
|
|
||||||
|
scope = dateStamp + "/" + Object.Region + "/" + Object.Service + "/aws4_request";
|
||||||
|
|
||||||
|
NewLine = Chars.LF;
|
||||||
|
|
||||||
|
canonicalRequestPlain = verb + NewLine +
|
||||||
|
AbsolutePath + NewLine +
|
||||||
|
queryParams + NewLine +
|
||||||
|
"content-type:" + contentType + NewLine +
|
||||||
|
"host:" + HostS3 + NewLine +
|
||||||
|
"x-amz-content-sha256:" + contentHash + NewLine +
|
||||||
|
"x-amz-date:" + date + NewLine +
|
||||||
|
NewLine +
|
||||||
|
"content-type;host;x-amz-content-sha256;x-amz-date" + NewLine +
|
||||||
|
"" + contentHash;
|
||||||
|
|
||||||
|
canonicalRequestByte = Hash(canonicalRequestPlain, HashFunction.SHA256);
|
||||||
|
|
||||||
|
canonicalRequestHash = Lower(GetHexStringFromBinaryData(canonicalRequestByte));
|
||||||
|
|
||||||
|
stringToSign = "AWS4-HMAC-SHA256" + NewLine + date + NewLine + scope + NewLine + canonicalRequestHash;
|
||||||
|
|
||||||
|
sign = GetSignatureKey(Object.SecretKey, dateStamp, Object.Region, Object.Service);
|
||||||
|
|
||||||
|
signatureByte = HMACSHA256(sign, GetBinaryDataFromString(stringToSign));
|
||||||
|
|
||||||
|
signatureHash = Lower(GetHexStringFromBinaryData(signatureByte));
|
||||||
|
|
||||||
|
Authorization = "AWS4-HMAC-SHA256 Credential=" + Object.AccessKey + "/" + scope
|
||||||
|
+ ",SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date,Signature=" + signatureHash;
|
||||||
|
|
||||||
|
headers = New Map();
|
||||||
|
headers.Insert("Host", HostS3);
|
||||||
|
headers.Insert("Content-Type", contentType);
|
||||||
|
headers.Insert("x-amz-content-sha256", contentHash);
|
||||||
|
headers.Insert("x-amz-date", date);
|
||||||
|
headers.Insert("Authorization", Authorization);
|
||||||
|
|
||||||
|
Query = New HTTPRequest( uri, headers);
|
||||||
|
If Not LocalFilePath = Undefined Then
|
||||||
|
Query.SetBodyFileName(LocalFilePath);
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
Connection = New HTTPConnection(HostS3, 443,,,,, New OpenSSLSecureConnection);
|
||||||
|
|
||||||
|
Result = Connection.CallHTTPMethod(verb, Query);
|
||||||
|
|
||||||
|
Object.RequestText = canonicalRequestPlain;
|
||||||
|
|
||||||
|
Object.ResponseText = Result.GetBodyAsString();
|
||||||
|
|
||||||
|
NewLog = Object.RequestLogs.Add();
|
||||||
|
NewLog.Date = CurrentDate();
|
||||||
|
NewLog.StatusCode = Result.StatusCode;
|
||||||
|
NewLog.Request = Object.RequestText;
|
||||||
|
NewLog.Response = Object.ResponseText;
|
||||||
|
|
||||||
|
If Result.StatusCode = 200
|
||||||
|
OR Result.StatusCode = 204 Then
|
||||||
|
|
||||||
|
If ValueIsFilled(Object.ResponseText) Then
|
||||||
|
ParseXmlResponse(Object.ResponseText);
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
Else
|
||||||
|
|
||||||
|
Message("The request has failed with the status code = " + Result.StatusCode);
|
||||||
|
|
||||||
|
Items.GroupPages.CurrentPage = items.GroupRequestLog;
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
#EndRegion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure OnCreateAtServer(Cancel, StandardProcessing)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure BucketOnChange(Item)
|
||||||
|
|
||||||
|
BucketOnChangeAtServer();
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure BucketOnChangeAtServer()
|
||||||
|
|
||||||
|
Object.AccessKey = Object.Bucket.AccessKeyId;
|
||||||
|
Object.SecretKey = Object.Bucket.SecretAccessKey;
|
||||||
|
Object.BucketName = Object.Bucket.BucketName;
|
||||||
|
Object.Region = Object.Bucket.Region;
|
||||||
|
Object.Service = "s3";
|
||||||
|
Object.MaxKeysPerRequest = Object.Bucket.MaxKeysPerRequest;
|
||||||
|
Object.PublicEndpoint = Object.Bucket.PublicEndpoint;
|
||||||
|
Object.m_Prefix = Object.Bucket.InitialFolder;
|
||||||
|
|
||||||
|
Items.BucketObjectsContextMenuOpenInBrowser.Visible = ValueIsFilled(Object.PublicEndpoint);
|
||||||
|
|
||||||
|
ListObjectsAtServer(Object.m_Prefix);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure ListObjects(Command)
|
||||||
|
|
||||||
|
ListObjectsAtServer(Object.m_Prefix);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure BucketObjectsSelection(Item, SelectedRow, Field, StandardProcessing)
|
||||||
|
|
||||||
|
If Not Item.CurrentData = Undefined Then
|
||||||
|
|
||||||
|
If Item.CurrentData.isFolder Then
|
||||||
|
|
||||||
|
SelectedFolder = Item.CurrentData.Key;
|
||||||
|
|
||||||
|
ListObjectsAtServer(SelectedFolder);
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure ReturnOneLevelUp(Command)
|
||||||
|
|
||||||
|
CurrentFolder = Object.m_Prefix;
|
||||||
|
|
||||||
|
CurrentFolder = Left(CurrentFolder, StrFind(CurrentFolder, "/", SearchDirection.FromEnd,, 2));
|
||||||
|
|
||||||
|
ListObjectsAtServer(CurrentFolder);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure CreateNewFolder(Command)
|
||||||
|
|
||||||
|
ToolTip = "Enter a name for the new folder";
|
||||||
|
Notify = New NotifyDescription("CreateNewFolderAfterInputString", ThisObject);
|
||||||
|
ShowInputString(Notify, "", ToolTip, 0, False);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure CreateNewFolderAfterInputString(Sring, Parameters) Export
|
||||||
|
|
||||||
|
If Sring <> Undefined Then
|
||||||
|
|
||||||
|
CreateNewFolderAtServer(Sring);
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure CreateNewFolderAtServer(ChosenFolderName)
|
||||||
|
|
||||||
|
Prefix = StrReplace(EncodeString(Object.m_Prefix + ChosenFolderName + "/", StringEncodingMethod.URLEncoding), "%2F", "/");
|
||||||
|
|
||||||
|
ExecuteCommand("UploadFile", Prefix);
|
||||||
|
|
||||||
|
ListObjectsAtServer(Object.m_Prefix);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure UploadNewFile(Command)
|
||||||
|
|
||||||
|
Notification = New NotifyDescription("UploadFileHereCompletion", ThisObject);
|
||||||
|
|
||||||
|
Dialog = New FileDialog(FileDialogMode.Open);
|
||||||
|
|
||||||
|
BeginPutFile(Notification, , Dialog, True, ThisObject.UUID);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure UploadFileHereCompletion(Result, Address, ChosenFileName, ExtraParameters) Экспорт
|
||||||
|
|
||||||
|
If Result Then
|
||||||
|
UploadFileHereAtServer(Address, ChosenFileName);
|
||||||
|
Else
|
||||||
|
Message("The file was not selected!");
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure UploadFileHereAtServer(Address, ChosenFileName)
|
||||||
|
|
||||||
|
Data = GetFromTempStorage(Address);
|
||||||
|
TempFileName = GetTempFileName();
|
||||||
|
Data.Write(TempFileName);
|
||||||
|
|
||||||
|
ShortFileName = Right(ChosenFileName, StrLen(ChosenFileName) - StrFind(ChosenFileName, "\", SearchDirection.FromEnd));
|
||||||
|
|
||||||
|
Prefix = StrReplace(EncodeString(Object.m_Prefix + ShortFileName, StringEncodingMethod.URLEncoding), "%2F", "/");
|
||||||
|
|
||||||
|
FileContentType = "image/png";
|
||||||
|
If StrEndsWith(ShortFileName, ".jpg") Then
|
||||||
|
FileContentType = "image/jpeg";
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
ExecuteCommand("UploadFile", Prefix, TempFileName, FileContentType);
|
||||||
|
|
||||||
|
ListObjectsAtServer(Object.m_Prefix);
|
||||||
|
|
||||||
|
Try
|
||||||
|
DeleteFiles(TempFileName);
|
||||||
|
Except
|
||||||
|
EndTry;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure OpenInBrowser(Command)
|
||||||
|
|
||||||
|
If Not Items.BucketObjects.CurrentData = Undefined Then
|
||||||
|
|
||||||
|
Url = Object.PublicEndpoint + Items.BucketObjects.CurrentData.Key;
|
||||||
|
|
||||||
|
RunAppAsync(Url,, False);
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtServer
|
||||||
|
Procedure DeleteObjectAtServer(ObjectShortName)
|
||||||
|
|
||||||
|
Prefix = StrReplace(EncodeString(Object.m_Prefix + ObjectShortName, StringEncodingMethod.URLEncoding), "%2F", "/");
|
||||||
|
|
||||||
|
ExecuteCommand("DeleteFile", Prefix);
|
||||||
|
|
||||||
|
ListObjectsAtServer(Object.m_Prefix);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure DeleteObject(Command)
|
||||||
|
|
||||||
|
If Not Items.BucketObjects.CurrentData = Undefined Then
|
||||||
|
|
||||||
|
Notification = New NotifyDescription("DeleteObjectConfirmation", ThisObject);
|
||||||
|
|
||||||
|
ShowQueryBox(Notification,
|
||||||
|
"Do you want to delete [" + Items.BucketObjects.CurrentData.ObjectShortName + "] object?",
|
||||||
|
QuestionDialogMode.YesNoCancel,
|
||||||
|
60, // timeout in seconds
|
||||||
|
DialogReturnCode.Cancel,
|
||||||
|
"Please confirm deletion"
|
||||||
|
);
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
&AtClient
|
||||||
|
Procedure DeleteObjectConfirmation(Rez, Paramaters) Export
|
||||||
|
|
||||||
|
If Rez = DialogReturnCode.Yes Then
|
||||||
|
|
||||||
|
DeleteObjectAtServer(Items.BucketObjects.CurrentData.ObjectShortName);
|
||||||
|
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
13
Languages/Русский.xml
Normal file
13
Languages/Русский.xml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<Language uuid="ab579006-f582-4f94-8065-312326331e05">
|
||||||
|
<InternalInfo/>
|
||||||
|
<Properties>
|
||||||
|
<Name>Русский</Name>
|
||||||
|
<Comment/>
|
||||||
|
<ObjectBelonging>Adopted</ObjectBelonging>
|
||||||
|
<ExtendedConfigurationObject>af1b61ff-d1b9-4053-ad85-8259b6626adc</ExtendedConfigurationObject>
|
||||||
|
<LanguageCode>ru</LanguageCode>
|
||||||
|
</Properties>
|
||||||
|
</Language>
|
||||||
|
</MetaDataObject>
|
10
Roles/S3_ОсновнаяРоль.xml
Normal file
10
Roles/S3_ОсновнаяРоль.xml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.13">
|
||||||
|
<Role uuid="15b5d659-1a77-4c3f-a005-b022aa485cc1">
|
||||||
|
<Properties>
|
||||||
|
<Name>S3_ОсновнаяРоль</Name>
|
||||||
|
<Synonym/>
|
||||||
|
<Comment/>
|
||||||
|
</Properties>
|
||||||
|
</Role>
|
||||||
|
</MetaDataObject>
|
BIN
s3-browser.png
Normal file
BIN
s3-browser.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 37 KiB |
BIN
s3-bucket-configuration.png
Normal file
BIN
s3-bucket-configuration.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
Loading…
Reference in New Issue
Block a user