@@ -0,0 +1,1425 @@
+/**%0A * Copyright (C) 2009 - 2010 by OpenGamma Inc.%0A *%0A * Please see distribution for license.%0A */%0Apackage com.opengamma.engine.view;%0A%0Aimport java.util.Set;%0Aimport java.util.TreeSet;%0Aimport java.util.concurrent.CopyOnWriteArraySet;%0A%0A/**%0A * A view definition repository which represents one or more others. When retrieving a view definition, repositories%0A * are searched in the order that they were added and the first matching definition is returned.%0A * %3Cp%3E%0A * This is temporary, to be replaced once view definitions have proper identifiers.%0A */%0Apublic class AggregatingViewDefinitionRepository implements ViewDefinitionRepository %7B%0A%0A  private final Set%3CViewDefinitionRepository%3E _repositories = new CopyOnWriteArraySet%3CViewDefinitionRepository%3E();%0A  %0A  public void addRepository(ViewDefinitionRepository repository) %7B%0A    _repositories.add(repository);%0A  %7D%0A  %0A  @Override%0A  public ViewDefinition getDefinition(String definitionName) %7B%0A    for (ViewDefinitionRepository repository : _repositories) %7B%0A      ViewDefinition definition = repository.getDefinition(definitionName); %0A      if (definition != null) %7B%0A        return definition;%0A      %7D%0A    %7D%0A    return null;%0A  %7D%0A%0A  @Override%0A  public Set%3CString%3E getDefinitionNames() %7B%0A    Set%3CString%3E result = new TreeSet%3CString%3E();%0A    for (ViewDefinitionRepository repository : _repositories) %7B%0A      result.addAll(repository.getDefinitionNames());%0A    %7D%0A    return result;%0A  %7D%0A%0A%7D%0A

Add support for a user ViewDefinitionRepository Add ViewDefinitionRepository and SecurityMaster to RemoteClient, etc Add all this into the demo engine