Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
MKCLOS
Core Development Platform
corepkgv2
Merge requests
!209
An error occurred while fetching the assigned milestone of the selected merge_request.
Added function in fdb
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Added function in fdb
added_functions_fdb
into
devbranch
Overview
0
Commits
1
Pipelines
0
Changes
2
Merged
Vivek Naik
requested to merge
added_functions_fdb
into
devbranch
4 years ago
Overview
0
Commits
1
Pipelines
0
Changes
2
Expand
Added functions for following
Function to get bucket by bucket id
Function fetch multiple resources by query
Function to fetch file paths by query
0
0
Merge request reports
Compare
devbranch
devbranch (base)
and
latest version
latest version
fca738dd
1 commit,
4 years ago
2 files
+
81
−
0
Expand all files
Preferences
File browser
List view
Tree view
Compare changes
Inline
Side-by-side
Show whitespace changes
Show one file at a time
Search (e.g. *.vue) (Ctrl+P)
dalmdl/corefdb/filetype/pack.go
+
43
−
0
Options
@@ -578,6 +578,49 @@ func (p *PackFile) ReadMedia(recordID string) ([]byte, *gjson.Result, error) {
return
dataByte
,
&
metaDataObj
,
nil
}
func
(
p
*
PackFile
)
ReadMediaByQuery
(
inFileIndexQueries
[]
string
)
(
map
[
string
][]
byte
,
map
[
string
]
gjson
.
Result
,
error
)
{
f
:=
p
.
Fp
indexData
,
err
:=
getInFileIndexData
(
f
)
if
err
!=
nil
{
loggermdl
.
LogError
(
"index data not found: "
,
f
.
Name
(),
err
)
return
nil
,
nil
,
err
}
indexRows
:=
indexData
// indexRows := indexData.Get(`#[fileType==` + requestedFileType + `]#`)
for
i
:=
0
;
i
<
len
(
inFileIndexQueries
);
i
++
{
indexRows
=
indexRows
.
Get
(
inFileIndexQueries
[
i
]
+
"#"
)
}
if
indexRows
.
String
()
==
""
{
loggermdl
.
LogError
(
"data not found"
)
return
nil
,
nil
,
errormdl
.
Wrap
(
"data not found"
)
}
dataMap
:=
make
(
map
[
string
][]
byte
,
0
)
metaDataMap
:=
make
(
map
[
string
]
gjson
.
Result
,
0
)
for
_
,
indexRow
:=
range
indexRows
.
Array
()
{
startOffSet
:=
indexRow
.
Get
(
"startOffset"
)
.
Int
()
dataSize
:=
indexRow
.
Get
(
"dataSize"
)
.
Int
()
if
startOffSet
==
0
||
dataSize
==
0
{
return
nil
,
nil
,
errormdl
.
Wrap
(
"data not found"
)
}
dataByte
,
err
:=
getFileDataFromPack
(
f
,
startOffSet
,
dataSize
,
nil
,
nil
)
if
err
!=
nil
{
loggermdl
.
LogError
(
err
)
return
nil
,
nil
,
err
}
recordID
:=
indexRow
.
Get
(
"recordID"
)
.
String
()
if
recordID
==
""
{
return
nil
,
nil
,
errormdl
.
Wrap
(
"record id not found"
)
}
data
,
_
:=
sjson
.
Set
(
""
,
"requiredData"
,
indexRow
.
Get
(
"requiredData"
)
.
String
())
// data, _ = sjson.Set(data, "infileIndex", indexData.String())
metaDataObj
:=
gjson
.
Parse
(
data
)
dataMap
[
recordID
]
=
dataByte
metaDataMap
[
recordID
]
=
metaDataObj
}
return
dataMap
,
metaDataMap
,
nil
}
func
(
p
*
PackFile
)
RemoveMedia
(
recordID
string
)
error
{
queries
:=
[]
string
{
`#[recordID=`
+
recordID
+
`]`
}
_
,
err
:=
p
.
Remove
(
queries
)
Menu
Explore
Projects
Groups
Topics
Snippets