Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
S
super-appium
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open-source
super-appium
Commits
f0dc02a6
Commit
f0dc02a6
authored
Aug 26, 2019
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
b8b20f8b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
12 deletions
+16
-12
ValueGetters.java
...c/main/java/com/virjar/superappium/lazy/ValueGetters.java
+16
-12
No files found.
super-appium/src/main/java/com/virjar/superappium/lazy/ValueGetters.java
View file @
f0dc02a6
...
...
@@ -67,25 +67,29 @@ public class ValueGetters {
@SuppressWarnings
(
"unchecked"
)
public
static
Map
<
String
,
ValueGetter
>
valueGetters
(
ViewModel
viewModel
,
boolean
saveCache
)
{
Class
<?
extends
View
>
theClass
=
viewModel
.
getOriginView
().
getClass
();
Map
<
String
,
ValueGetter
>
rule
;
if
(
cache
.
containsKey
(
theClass
))
{
return
cache
.
get
(
theClass
);
}
// calculate
Map
<
String
,
ValueGetter
>
ret
=
new
HashMap
<>();
for
(
ValueGetter
valueGetter
:
valueGetters
)
{
if
(
valueGetter
.
support
(
theClass
))
{
ret
.
put
(
valueGetter
.
attr
(),
new
LazyValueGetter
(
valueGetter
));
rule
=
cache
.
get
(
theClass
);
}
else
{
// calculate
rule
=
new
HashMap
<>();
for
(
ValueGetter
valueGetter
:
valueGetters
)
{
if
(
valueGetter
.
support
(
theClass
))
{
rule
.
put
(
valueGetter
.
attr
(),
valueGetter
);
}
}
if
(
saveCache
)
{
cache
.
put
(
theClass
,
rule
);
}
}
if
(
saveCache
)
{
cache
.
put
(
theClass
,
ret
);
//avoid reload value data
Map
<
String
,
ValueGetter
>
ret
=
new
HashMap
<>();
for
(
Map
.
Entry
<
String
,
ValueGetter
>
entry
:
rule
.
entrySet
())
{
ret
.
put
(
entry
.
getKey
(),
new
LazyValueGetter
(
entry
.
getValue
()));
}
return
ret
;
}
}
Write
Preview
Markdown
is supported
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