Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
UNLOCK
fairds
Commits
3fbdfe28
Commit
3fbdfe28
authored
Feb 07, 2022
by
Jasper Koehorst
Browse files
dashboard and archive update
parent
70d826b0
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/main/java/nl/fairbydesign/backend/ncbi/objects/esample/RUNSET.java
View file @
3fbdfe28
package
nl.fairbydesign.backend.ncbi.objects.esample
;
import
com.fasterxml.jackson.annotation.JsonCreator
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.ArrayList
;
public
class
RUNSET
{
@JsonProperty
(
"RUN"
)
public
RUN
getRUN
()
{
public
ArrayList
<
RUN
>
getRUN
()
{
return
this
.
rUN
;
}
public
void
setRUN
(
RUN
rUN
)
{
public
void
setRUN
(
ArrayList
<
RUN
>
rUN
)
{
this
.
rUN
=
rUN
;
}
RUN
rUN
;
}
}
ArrayList
<
RUN
>
rUN
=
new
ArrayList
<>();
}
\ No newline at end of file
src/main/java/nl/fairbydesign/views/unlock/archive/Archive.java
View file @
3fbdfe28
...
...
@@ -28,6 +28,7 @@ import org.irods.jargon.core.pub.IRODSFileSystem;
import
org.irods.jargon.core.pub.domain.AvuData
;
import
org.irods.jargon.core.pub.io.IRODSFile
;
import
org.irods.jargon.core.pub.io.IRODSFileFactory
;
import
org.irods.jargon.core.query.MetaDataAndDomainData
;
import
org.jboss.logging.Logger
;
import
java.util.ArrayList
;
...
...
@@ -144,6 +145,7 @@ public class Archive extends Div {
});
dual
.
addClickListener
(
clicked
->
{
// Set metadata to dual store (disk and archive)
Notification
.
show
(
"Disk & Tape clicked"
);
sendTo
(
credentials
,
grid
.
getSelectedItems
(),
"to_dual"
);
// Force refresh of grid
searchButton
.
clickInClient
();
...
...
@@ -164,12 +166,26 @@ public class Archive extends Div {
IRODSAccessObjectFactory
accessObjectFactory
=
IRODSFileSystem
.
instance
().
getIRODSAccessObjectFactory
();
for
(
File
file
:
files
)
{
IRODSFile
irodsFile
=
fileFactory
.
instanceIRODSFile
(
file
.
getPath
());
AvuData
a
vuData
=
new
AvuData
();
a
vuData
.
setAttribute
(
"RESOURCE"
);
a
vuData
.
setValue
(
value
);
a
vuData
.
setUnit
(
""
);
AvuData
newA
vuData
=
new
AvuData
();
newA
vuData
.
setAttribute
(
"RESOURCE"
);
newA
vuData
.
setValue
(
value
);
newA
vuData
.
setUnit
(
""
);
DataObjectAO
dataObjectAO
=
accessObjectFactory
.
getDataObjectAO
(
credentials
.
getIrodsAccount
());
dataObjectAO
.
addAVUMetadata
(
file
.
getPath
(),
avuData
);
boolean
replaced
=
false
;
for
(
MetaDataAndDomainData
metaDataAndDomainData
:
dataObjectAO
.
findMetadataValuesForDataObject
(
irodsFile
))
{
AvuData
avuDataIrodsFile
=
metaDataAndDomainData
.
asAvu
();
if
(
avuDataIrodsFile
.
getAttribute
().
contentEquals
(
"RESOURCE"
))
{
// Replace AVU object by this new one
logger
.
info
(
"Replacing AVU RESOURCE object"
);
dataObjectAO
.
modifyAVUMetadata
(
irodsFile
.
getAbsolutePath
(),
avuDataIrodsFile
,
newAvuData
);
replaced
=
true
;
break
;
}
}
if
(!
replaced
)
{
logger
.
info
(
"Adding AVU RESOURCE object"
);
dataObjectAO
.
addAVUMetadata
(
file
.
getPath
(),
newAvuData
);
}
}
}
catch
(
JargonException
e
)
{
e
.
printStackTrace
();
...
...
src/main/java/nl/fairbydesign/views/unlock/dashboard/DashboardView.java
View file @
3fbdfe28
...
...
@@ -27,6 +27,7 @@ import java.util.ArrayList;
import
java.util.Collection
;
import
java.util.HashSet
;
import
static
nl
.
fairbydesign
.
backend
.
irods
.
Data
.
getDiskUsage
;
import
static
nl
.
fairbydesign
.
backend
.
irods
.
Data
.
getJobInformation
;
/**
...
...
@@ -51,7 +52,7 @@ public class DashboardView extends Div {
// Drop down menu for projects?
ArrayList
<
Process
>
processes
=
Data
.
getPIS
(
credentials
.
getIrodsAccount
());
// Obtain disk usage overview
// Obtain disk usage overview
for project and investigation in landingzone and projects
ArrayList
<
DiskUsage
>
diskUsages
=
new
ArrayList
<>();
HashSet
<
String
>
diskUsageAnalysed
=
new
HashSet
<>();
for
(
Process
process
:
processes
)
{
...
...
@@ -102,10 +103,33 @@ public class DashboardView extends Div {
diskUsageGrid
.
removeAllColumns
();
diskUsageGrid
.
addColumn
(
DiskUsage:
:
getProject
).
setHeader
(
"Project"
);
diskUsageGrid
.
addColumn
(
DiskUsage:
:
getInvestigation
).
setHeader
(
"Investigation"
);
diskUsageGrid
.
addColumn
(
DiskUsage:
:
getSize
).
setHeader
(
"Size (GB)"
);
diskUsageGrid
.
addColumn
(
DiskUsage:
:
getTapeSize
).
setHeader
(
"Tape size (GB)"
);
diskUsageGrid
.
addColumn
(
DiskUsage:
:
getDiskSize
).
setHeader
(
"Disk size (GB)"
);
add
(
diskUsageGrid
);
// Obtain overall disk usage
try
{
Process
process
=
new
Process
();
process
.
setProjectIdentifier
(
"%"
);
process
.
setInvestigationIdentifier
(
"%"
);
ArrayList
<
DiskUsage
>
irodsUsages
=
new
ArrayList
<>();
irodsUsages
.
add
(
getDiskUsage
(
credentials
.
getIrodsAccount
(),
process
));
Grid
<
DiskUsage
>
iRODSUsageGrid
=
new
Grid
<>(
DiskUsage
.
class
);
iRODSUsageGrid
.
setItems
(
irodsUsages
);
iRODSUsageGrid
.
removeAllColumns
();
iRODSUsageGrid
.
addColumn
(
DiskUsage:
:
getProject
).
setHeader
(
"Project"
);
iRODSUsageGrid
.
addColumn
(
DiskUsage:
:
getInvestigation
).
setHeader
(
"Investigation"
);
iRODSUsageGrid
.
addColumn
(
DiskUsage:
:
getTapeSize
).
setHeader
(
"Tape size (GB)"
);
iRODSUsageGrid
.
addColumn
(
DiskUsage:
:
getDiskSize
).
setHeader
(
"Disk size (GB)"
);
add
(
iRODSUsageGrid
);
}
catch
(
GenQueryBuilderException
|
JargonException
|
JargonQueryException
e
)
{
e
.
printStackTrace
();
}
}
else
{
add
(
new
Label
(
"To use this you need to login first..."
));
Button
button
=
new
Button
(
"Login"
,
event
->
UI
.
getCurrent
().
navigate
(
"login"
));
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
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 comment