Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
周伟奇
/
bmw-ocr
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
1c0f538f
authored
2020-07-20 18:39:07 +0800
by
周伟奇
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
eDMS upload doc
1 parent
edb14afd
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
797 additions
and
6 deletions
src/apps/doc/edms.py
src/settings/conf/_default_config.py
src/settings/conf/prd.ini
src/settings/conf/sit.ini
src/settings/conf/uat.ini
wsdl/RepositoryController.wsdl
src/apps/doc/edms.py
View file @
1c0f538
...
...
@@ -11,7 +11,9 @@ class EDMS:
self
.
sm_client
=
Client
(
wsdl
=
conf
.
SM_WSDL
)
self
.
dm_client
=
Client
(
wsdl
=
conf
.
DM_WSDL
)
self
.
df_client
=
Client
(
wsdl
=
conf
.
DF_WSDL
)
self
.
rc_client
=
Client
(
wsdl
=
conf
.
RC_WSDL
)
self
.
download_url
=
conf
.
EDMS_DOWNLOAD_URL
self
.
upload_url
=
conf
.
EDMS_UPLOAD_URL
self
.
user_name
=
user_name
self
.
pwd
=
pwd
self
.
session_id
=
None
...
...
@@ -35,6 +37,11 @@ class EDMS:
return
self
.
session_id
return
self
.
set_session_id
()
def
get_headers
(
self
):
session_id
=
self
.
get_session_id
()
headers
=
{
'Cookie'
:
'{0}={1}'
.
format
(
consts
.
SESSION_PREFIX
,
session_id
)}
return
headers
def
get_download_token
(
self
,
headers
,
metadata_version_id
):
with
self
.
dm_client
.
settings
(
extra_http_headers
=
headers
):
res
=
self
.
dm_client
.
service
.
PrepareSingleDocumentToDownload
(
metadataVersionId
=
metadata_version_id
,
...
...
@@ -43,12 +50,7 @@ class EDMS:
actionType
=
consts
.
DOWNLOAD_ACTION_TYPE
)
return
res
.
token
def
download
(
self
,
save_path
,
metadata_version_id
):
session_id
=
self
.
get_session_id
()
headers
=
{
'Cookie'
:
'{0}={1}'
.
format
(
consts
.
SESSION_PREFIX
,
session_id
)}
token
=
self
.
get_download_token
(
headers
,
metadata_version_id
)
params
=
{
'token'
:
token
}
def
download_handler
(
self
,
params
,
headers
,
save_path
):
r
=
requests
.
get
(
self
.
download_url
,
params
=
params
,
headers
=
headers
,
stream
=
True
)
with
open
(
save_path
,
"wb"
)
as
f
:
# chunk是指定每次写入的大小,每次只写了512byte
...
...
@@ -57,3 +59,39 @@ class EDMS:
f
.
write
(
chunk
)
f
.
flush
()
def
download
(
self
,
save_path
,
metadata_version_id
):
headers
=
self
.
get_headers
()
token
=
self
.
get_download_token
(
headers
,
metadata_version_id
)
params
=
{
'token'
:
token
}
self
.
download_handler
(
params
,
headers
,
save_path
)
def
create_upload_token
(
self
,
headers
,
file_size
):
with
self
.
rc_client
.
settings
(
extra_http_headers
=
headers
):
token
=
self
.
rc_client
.
service
.
CreateUploadToken
(
fileSize
=
file_size
)
return
token
def
upload_handler
(
self
,
file_path
,
params
,
headers
):
with
open
(
file_path
,
'rb'
)
as
f
:
data
=
f
.
read
()
for
retry
in
range
(
4
):
res
=
requests
.
post
(
self
.
upload_url
,
params
=
params
,
headers
=
headers
,
data
=
data
)
if
res
.
status_code
==
requests
.
codes
.
ok
:
break
else
:
raise
Exception
def
add_doc_info
(
self
,
headers
,
token
,
app_info
):
with
self
.
dm_client
.
settings
(
extra_http_headers
=
headers
):
res
=
self
.
dm_client
.
service
.
AddDocumentInfo
()
return
res
def
upload
(
self
,
file_path
,
file_size
,
app_info
):
headers
=
self
.
get_headers
()
token
=
self
.
create_upload_token
(
headers
,
file_size
)
headers
.
update
({
'Content-Type'
:
'application/octet-stream'
})
params
=
{
'token'
:
token
}
self
.
upload_handler
(
file_path
,
params
,
headers
)
headers
.
pop
(
'Content-Type'
)
self
.
add_doc_info
(
headers
,
token
,
app_info
)
...
...
src/settings/conf/_default_config.py
View file @
1c0f538
...
...
@@ -11,6 +11,7 @@ LOGGING_CONFIG_FILE = os.path.join(COMMON_CONF_DIR, 'logging.conf')
SM_WSDL
=
os
.
path
.
join
(
WSDL_DIR
,
'SessionManager.wsdl'
)
DM_WSDL
=
os
.
path
.
join
(
WSDL_DIR
,
'DocumentManager.wsdl'
)
DF_WSDL
=
os
.
path
.
join
(
WSDL_DIR
,
'DocumentFinder.wsdl'
)
RC_WSDL
=
os
.
path
.
join
(
WSDL_DIR
,
'RepositoryController.wsdl'
)
# 文件存放根目录
LOG_DIR
=
os
.
path
.
join
(
os
.
path
.
dirname
(
BASE_DIR
),
'logs'
)
...
...
src/settings/conf/prd.ini
View file @
1c0f538
...
...
@@ -4,3 +4,4 @@ SLEEP_SECOND = 5
MAX_SLEEP_SECOND
=
60
EDMS_DOWNLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/DownloadHandler.ashx
EDMS_UPLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/UploadHandler.ashx
\ No newline at end of file
...
...
src/settings/conf/sit.ini
View file @
1c0f538
...
...
@@ -4,3 +4,4 @@ SLEEP_SECOND = 5
MAX_SLEEP_SECOND
=
60
EDMS_DOWNLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/DownloadHandler.ashx
EDMS_UPLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/UploadHandler.ashx
\ No newline at end of file
...
...
src/settings/conf/uat.ini
View file @
1c0f538
...
...
@@ -4,3 +4,4 @@ SLEEP_SECOND = 5
MAX_SLEEP_SECOND
=
60
EDMS_DOWNLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/DownloadHandler.ashx
EDMS_UPLOAD_URL
=
https://edms-test.bmw.com/FH/FileHold/DocumentRepository/UploadHandler.ashx
\ No newline at end of file
...
...
wsdl/RepositoryController.wsdl
0 → 100644
View file @
1c0f538
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions
xmlns:s=
"http://www.w3.org/2001/XMLSchema"
xmlns:soap12=
"http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:mime=
"http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:tns=
"http://filehold.com/documentrepository/repositorycontroller/"
xmlns:s1=
"http://microsoft.com/wsdl/types/"
xmlns:soap=
"http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tm=
"http://microsoft.com/wsdl/mime/textMatching/"
xmlns:http=
"http://schemas.xmlsoap.org/wsdl/http/"
xmlns:soapenc=
"http://schemas.xmlsoap.org/soap/encoding/"
targetNamespace=
"http://filehold.com/documentrepository/repositorycontroller/"
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
<wsdl:types>
<s:schema
elementFormDefault=
"qualified"
targetNamespace=
"http://filehold.com/documentrepository/repositorycontroller/"
>
<s:import
namespace=
"http://microsoft.com/wsdl/types/"
/>
<s:element
name=
"CreateUploadToken"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"fileSize"
type=
"s:long"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"CreateUploadTokenResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"CreateUploadTokenResult"
type=
"s1:guid"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"UploadFileDataChunk"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"token"
type=
"s1:guid"
/>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"chunk"
type=
"s:base64Binary"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"UploadFileDataChunkResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetFileDataChunk"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"token"
type=
"s1:guid"
/>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"buffer"
type=
"s:base64Binary"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"position"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"chunkSize"
type=
"s:int"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetFileDataChunkResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"GetFileDataChunkResult"
type=
"s:int"
/>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"buffer"
type=
"s:base64Binary"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"DownloadFileDataChunk"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"token"
type=
"s1:guid"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"position"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"chunkSize"
type=
"s:int"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"DownloadFileDataChunkResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"DownloadFileDataChunkResult"
type=
"s:base64Binary"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"RollbackFileCreation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"token"
type=
"s1:guid"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"RollbackFileCreationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"AddStorageLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"locationPath"
type=
"s:string"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"AddStorageLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"SetStorageLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"locationPath"
type=
"s:string"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"SetStorageLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetStorageLocation"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetStorageLocationResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"GetStorageLocationResult"
type=
"s:string"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetRepositoryLocationsWithUsedSpace"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetRepositoryLocationsWithUsedSpaceResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"GetRepositoryLocationsWithUsedSpaceResult"
type=
"tns:ArrayOfLocation"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType
name=
"ArrayOfLocation"
>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"unbounded"
name=
"Location"
nillable=
"true"
type=
"tns:Location"
/>
</s:sequence>
</s:complexType>
<s:complexType
name=
"Location"
>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"Path"
type=
"s:string"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"ID"
type=
"s:int"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"ReadOnly"
type=
"s:boolean"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"Freespace"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"Capacity"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"Threshold"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"CanDelete"
type=
"s:boolean"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"UsedSpace"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"StorageFillState"
type=
"s:int"
/>
</s:sequence>
</s:complexType>
<s:element
name=
"GetRepositoryLocations"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetRepositoryLocationsResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"GetRepositoryLocationsResult"
type=
"tns:ArrayOfLocation"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetRepositoryLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"repositoryId"
type=
"s:int"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetRepositoryLocationResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"GetRepositoryLocationResult"
type=
"tns:Location"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"AddRepositoryLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"repositoryLocation"
type=
"tns:Location"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"AddRepositoryLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"SetRepositoryLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"repositoryLocation"
type=
"tns:Location"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"SetRepositoryLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"CheckRepositoryLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"repositoryLocation"
type=
"tns:Location"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"delete"
type=
"s:boolean"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"CheckRepositoryLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetLocationStatistics"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"0"
maxOccurs=
"1"
name=
"path"
type=
"s:string"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"capacity"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"freespace"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"defualtThreshold"
type=
"s:long"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetLocationStatisticsResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"capacity"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"freespace"
type=
"s:long"
/>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"defualtThreshold"
type=
"s:long"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"DeleteRepositoryLocation"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"repositoryLocationId"
type=
"s:int"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"DeleteRepositoryLocationResponse"
>
<s:complexType
/>
</s:element>
<s:element
name=
"GetFileSize"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"repFileId"
type=
"s:long"
/>
</s:sequence>
</s:complexType>
</s:element>
<s:element
name=
"GetFileSizeResponse"
>
<s:complexType>
<s:sequence>
<s:element
minOccurs=
"1"
maxOccurs=
"1"
name=
"GetFileSizeResult"
type=
"s:long"
/>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
<s:schema
elementFormDefault=
"qualified"
targetNamespace=
"http://microsoft.com/wsdl/types/"
>
<s:simpleType
name=
"guid"
>
<s:restriction
base=
"s:string"
>
<s:pattern
value=
"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"
/>
</s:restriction>
</s:simpleType>
</s:schema>
</wsdl:types>
<wsdl:message
name=
"CreateUploadTokenSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:CreateUploadToken"
/>
</wsdl:message>
<wsdl:message
name=
"CreateUploadTokenSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:CreateUploadTokenResponse"
/>
</wsdl:message>
<wsdl:message
name=
"UploadFileDataChunkSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:UploadFileDataChunk"
/>
</wsdl:message>
<wsdl:message
name=
"UploadFileDataChunkSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:UploadFileDataChunkResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetFileDataChunkSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetFileDataChunk"
/>
</wsdl:message>
<wsdl:message
name=
"GetFileDataChunkSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetFileDataChunkResponse"
/>
</wsdl:message>
<wsdl:message
name=
"DownloadFileDataChunkSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:DownloadFileDataChunk"
/>
</wsdl:message>
<wsdl:message
name=
"DownloadFileDataChunkSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:DownloadFileDataChunkResponse"
/>
</wsdl:message>
<wsdl:message
name=
"RollbackFileCreationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:RollbackFileCreation"
/>
</wsdl:message>
<wsdl:message
name=
"RollbackFileCreationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:RollbackFileCreationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"AddStorageLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:AddStorageLocation"
/>
</wsdl:message>
<wsdl:message
name=
"AddStorageLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:AddStorageLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"SetStorageLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:SetStorageLocation"
/>
</wsdl:message>
<wsdl:message
name=
"SetStorageLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:SetStorageLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetStorageLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetStorageLocation"
/>
</wsdl:message>
<wsdl:message
name=
"GetStorageLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetStorageLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationsWithUsedSpaceSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocationsWithUsedSpace"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationsWithUsedSpaceSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocationsWithUsedSpaceResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationsSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocations"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationsSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocationsResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocation"
/>
</wsdl:message>
<wsdl:message
name=
"GetRepositoryLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetRepositoryLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"AddRepositoryLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:AddRepositoryLocation"
/>
</wsdl:message>
<wsdl:message
name=
"AddRepositoryLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:AddRepositoryLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"SetRepositoryLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:SetRepositoryLocation"
/>
</wsdl:message>
<wsdl:message
name=
"SetRepositoryLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:SetRepositoryLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"CheckRepositoryLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:CheckRepositoryLocation"
/>
</wsdl:message>
<wsdl:message
name=
"CheckRepositoryLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:CheckRepositoryLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetLocationStatisticsSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetLocationStatistics"
/>
</wsdl:message>
<wsdl:message
name=
"GetLocationStatisticsSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetLocationStatisticsResponse"
/>
</wsdl:message>
<wsdl:message
name=
"DeleteRepositoryLocationSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:DeleteRepositoryLocation"
/>
</wsdl:message>
<wsdl:message
name=
"DeleteRepositoryLocationSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:DeleteRepositoryLocationResponse"
/>
</wsdl:message>
<wsdl:message
name=
"GetFileSizeSoapIn"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetFileSize"
/>
</wsdl:message>
<wsdl:message
name=
"GetFileSizeSoapOut"
>
<wsdl:part
name=
"parameters"
element=
"tns:GetFileSizeResponse"
/>
</wsdl:message>
<wsdl:portType
name=
"RepositoryControllerSoap"
>
<wsdl:operation
name=
"CreateUploadToken"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Generate new upload token and create file in document repository
</wsdl:documentation>
<wsdl:input
message=
"tns:CreateUploadTokenSoapIn"
/>
<wsdl:output
message=
"tns:CreateUploadTokenSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"UploadFileDataChunk"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Append data from chunk to file.
</wsdl:documentation>
<wsdl:input
message=
"tns:UploadFileDataChunkSoapIn"
/>
<wsdl:output
message=
"tns:UploadFileDataChunkSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetFileDataChunk"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Return data chunk from specified file
</wsdl:documentation>
<wsdl:input
message=
"tns:GetFileDataChunkSoapIn"
/>
<wsdl:output
message=
"tns:GetFileDataChunkSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"DownloadFileDataChunk"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Return data chunk from specified file
</wsdl:documentation>
<wsdl:input
message=
"tns:DownloadFileDataChunkSoapIn"
/>
<wsdl:output
message=
"tns:DownloadFileDataChunkSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"RollbackFileCreation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Roll back creation of the file
</wsdl:documentation>
<wsdl:input
message=
"tns:RollbackFileCreationSoapIn"
/>
<wsdl:output
message=
"tns:RollbackFileCreationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"AddStorageLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Add new storage location to Document Repository
</wsdl:documentation>
<wsdl:input
message=
"tns:AddStorageLocationSoapIn"
/>
<wsdl:output
message=
"tns:AddStorageLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"SetStorageLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
This method is no longer supported, use SetRepositoryLocation instead.
</wsdl:documentation>
<wsdl:input
message=
"tns:SetStorageLocationSoapIn"
/>
<wsdl:output
message=
"tns:SetStorageLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetStorageLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Retrieve location of the storage
</wsdl:documentation>
<wsdl:input
message=
"tns:GetStorageLocationSoapIn"
/>
<wsdl:output
message=
"tns:GetStorageLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocationsWithUsedSpace"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Retrieve configured repository locations with used space.
</wsdl:documentation>
<wsdl:input
message=
"tns:GetRepositoryLocationsWithUsedSpaceSoapIn"
/>
<wsdl:output
message=
"tns:GetRepositoryLocationsWithUsedSpaceSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocations"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Retrieve configured repository locations.
</wsdl:documentation>
<wsdl:input
message=
"tns:GetRepositoryLocationsSoapIn"
/>
<wsdl:output
message=
"tns:GetRepositoryLocationsSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Retrieve information about the specified repository location.
</wsdl:documentation>
<wsdl:input
message=
"tns:GetRepositoryLocationSoapIn"
/>
<wsdl:output
message=
"tns:GetRepositoryLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"AddRepositoryLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Add the new repository locations.
</wsdl:documentation>
<wsdl:input
message=
"tns:AddRepositoryLocationSoapIn"
/>
<wsdl:output
message=
"tns:AddRepositoryLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"SetRepositoryLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Edit an existing repository locations.
</wsdl:documentation>
<wsdl:input
message=
"tns:SetRepositoryLocationSoapIn"
/>
<wsdl:output
message=
"tns:SetRepositoryLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"CheckRepositoryLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Validates the specified repository locations.
</wsdl:documentation>
<wsdl:input
message=
"tns:CheckRepositoryLocationSoapIn"
/>
<wsdl:output
message=
"tns:CheckRepositoryLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetLocationStatistics"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Gets a location's statistics.
</wsdl:documentation>
<wsdl:input
message=
"tns:GetLocationStatisticsSoapIn"
/>
<wsdl:output
message=
"tns:GetLocationStatisticsSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"DeleteRepositoryLocation"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Delete an existing repository locations.
</wsdl:documentation>
<wsdl:input
message=
"tns:DeleteRepositoryLocationSoapIn"
/>
<wsdl:output
message=
"tns:DeleteRepositoryLocationSoapOut"
/>
</wsdl:operation>
<wsdl:operation
name=
"GetFileSize"
>
<wsdl:documentation
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
>
Return size of file with specified id
</wsdl:documentation>
<wsdl:input
message=
"tns:GetFileSizeSoapIn"
/>
<wsdl:output
message=
"tns:GetFileSizeSoapOut"
/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding
name=
"RepositoryControllerSoap"
type=
"tns:RepositoryControllerSoap"
>
<soap:binding
transport=
"http://schemas.xmlsoap.org/soap/http"
/>
<wsdl:operation
name=
"CreateUploadToken"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/CreateUploadToken"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"UploadFileDataChunk"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/UploadFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetFileDataChunk"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"DownloadFileDataChunk"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/DownloadFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"RollbackFileCreation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/RollbackFileCreation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"AddStorageLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/AddStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"SetStorageLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/SetStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetStorageLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocationsWithUsedSpace"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocationsWithUsedSpace"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocations"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocations"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"AddRepositoryLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/AddRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"SetRepositoryLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/SetRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"CheckRepositoryLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/CheckRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetLocationStatistics"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetLocationStatistics"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"DeleteRepositoryLocation"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/DeleteRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetFileSize"
>
<soap:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetFileSize"
style=
"document"
/>
<wsdl:input>
<soap:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding
name=
"RepositoryControllerSoap12"
type=
"tns:RepositoryControllerSoap"
>
<soap12:binding
transport=
"http://schemas.xmlsoap.org/soap/http"
/>
<wsdl:operation
name=
"CreateUploadToken"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/CreateUploadToken"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"UploadFileDataChunk"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/UploadFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetFileDataChunk"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"DownloadFileDataChunk"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/DownloadFileDataChunk"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"RollbackFileCreation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/RollbackFileCreation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"AddStorageLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/AddStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"SetStorageLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/SetStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetStorageLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetStorageLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocationsWithUsedSpace"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocationsWithUsedSpace"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocations"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocations"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetRepositoryLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"AddRepositoryLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/AddRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"SetRepositoryLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/SetRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"CheckRepositoryLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/CheckRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetLocationStatistics"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetLocationStatistics"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"DeleteRepositoryLocation"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/DeleteRepositoryLocation"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation
name=
"GetFileSize"
>
<soap12:operation
soapAction=
"http://filehold.com/documentrepository/repositorycontroller/GetFileSize"
style=
"document"
/>
<wsdl:input>
<soap12:body
use=
"literal"
/>
</wsdl:input>
<wsdl:output>
<soap12:body
use=
"literal"
/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service
name=
"RepositoryController"
>
<wsdl:port
name=
"RepositoryControllerSoap"
binding=
"tns:RepositoryControllerSoap"
>
<soap:address
location=
"https://edms-test.bmw.com/FH/FileHold/DocumentRepository/RepositoryController.asmx"
/>
</wsdl:port>
<wsdl:port
name=
"RepositoryControllerSoap12"
binding=
"tns:RepositoryControllerSoap12"
>
<soap12:address
location=
"https://edms-test.bmw.com/FH/FileHold/DocumentRepository/RepositoryController.asmx"
/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
\ No newline at end of file
Write
Preview
Styling with
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment