Toggle navigation
Toggle navigation
This project
Loading...
Sign in
홍길동
/
onos
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Sho SHIMIZU
2016-05-06 14:46:15 -0700
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
001e3f2a8b169cea99abf3b749669ae37547ea5d
001e3f2a
1 parent
22fb2830
Tighten type of argument
Change-Id: I10acf305b48cfbec509bc0467af68644c5a8c5b3
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
14 deletions
core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentResourceStore.java
core/store/dist/src/main/java/org/onosproject/store/resource/impl/ConsistentResourceStore.java
View file @
001e3f2
...
...
@@ -123,11 +123,12 @@ public class ConsistentResourceStore extends AbstractStore<ResourceEvent, Resour
TransactionalDiscreteResourceStore
discreteTxStore
=
discreteStore
.
transactional
(
tx
);
TransactionalContinuousResourceStore
continuousTxStore
=
continuousStore
.
transactional
(
tx
);
for
(
Map
.
Entry
<
DiscreteResource
,
List
<
Resource
>>
entry
:
resourceMap
.
entrySet
())
{
if
(!
lookup
(
discreteTxStore
,
continuousTxStore
,
entry
.
getKey
().
id
()).
isPresent
())
{
DiscreteResourceId
parentId
=
entry
.
getKey
().
id
();
if
(!
lookup
(
discreteTxStore
,
parentId
).
isPresent
())
{
return
abortTransaction
(
tx
);
}
if
(!
appendValues
(
discreteTxStore
,
continuousTxStore
,
entry
.
getKey
().
id
()
,
entry
.
getValue
()))
{
if
(!
appendValues
(
discreteTxStore
,
continuousTxStore
,
parentId
,
entry
.
getValue
()))
{
return
abortTransaction
(
tx
);
}
}
...
...
@@ -413,19 +414,9 @@ public class ConsistentResourceStore extends AbstractStore<ResourceEvent, Resour
* @param id ID of resource to be checked
* @return the resource which is regarded as the same as the specified resource
*/
// Naive implementation, which traverses all elements in the set when continuous resource
// computational complexity: O(1) when discrete resource. O(n) when continuous resource
// where n is the number of elements in the associated set
private
Optional
<
Resource
>
lookup
(
TransactionalDiscreteResourceStore
discreteTxStore
,
TransactionalContinuousResourceStore
continuousTxStore
,
ResourceId
id
)
{
if
(
id
instanceof
DiscreteResourceId
)
{
return
discreteTxStore
.
lookup
((
DiscreteResourceId
)
id
);
}
else
if
(
id
instanceof
ContinuousResourceId
)
{
return
continuousTxStore
.
lookup
((
ContinuousResourceId
)
id
);
}
else
{
return
Optional
.
empty
();
}
DiscreteResourceId
id
)
{
return
discreteTxStore
.
lookup
(
id
);
}
// internal use only
...
...
Please
register
or
login
to post a comment