X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FDefaultScope.java;h=ad4b09863418b6e7f02b47cfcdfec952f5e4b2db;hb=32a8562695029cf13d915bc7941a61fe07ff0005;hp=7290a790365eda04712f5ffe5ecd74cc692a2fb4;hpb=49e4054c52db618894cf85eab721aebcbb9c3bc1;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/core/DefaultScope.java b/system/general/src/main/java/org/wamblee/system/core/DefaultScope.java index 7290a790..ad4b0986 100644 --- a/system/general/src/main/java/org/wamblee/system/core/DefaultScope.java +++ b/system/general/src/main/java/org/wamblee/system/core/DefaultScope.java @@ -17,6 +17,7 @@ package org.wamblee.system.core; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -29,7 +30,11 @@ public class DefaultScope implements Scope { private Map _properties; private Map _runtimes; private Map _provided; - private ProvidedInterface[] _externallyProvided; + private List _externallyProvided; + + public DefaultScope(ListaExternallyProvided) { + this(aExternallyProvided.toArray(new ProvidedInterface[0])); + } public DefaultScope(ProvidedInterface[] aExternallyProvided) { this(aExternallyProvided, new ArrayList()); @@ -45,12 +50,13 @@ public class DefaultScope implements Scope { _properties = new HashMap(); _runtimes = new HashMap(); _provided = new HashMap(); - _externallyProvided = aExternallyProvided; + _externallyProvided = new ArrayList(); + _externallyProvided.addAll(Arrays.asList(aExternallyProvided)); } @Override - public ProvidedInterface[] getProvidedInterfaces() { - return _externallyProvided; + public List getProvidedInterfaces() { + return Collections.unmodifiableList(_externallyProvided); } @Override