/* * Copyright (c) 2012 Eike Stepper (Berlin, Germany) and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Eike Stepper - initial API and implementation */ package org.eclipse.emf.cdo.admin; import org.eclipse.emf.cdo.common.admin.CDOAdmin; import org.eclipse.net4j.connector.IConnector; import org.eclipse.net4j.util.event.IEvent; import java.util.Map; /** * A client-side {@link CDOAdmin administrative interface}. * <p> * It can fire the following events: * <ul> * <li> {@link ConnectionStateChangedEvent} after the connection {@link #isConnected() state} has changed. * </ul> * * @author Eike Stepper * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. */ public interface CDOAdminClient extends CDOAdmin { public String getURL(); public boolean isConnected(); public IConnector getConnector(); public CDOAdminClientRepository[] getRepositories(); public CDOAdminClientRepository getRepository(String name); public CDOAdminClientRepository createRepository(String name, String type, Map<String, Object> properties); public CDOAdminClientRepository waitForRepository(String name); /** * An {@link IEvent event} fired from a client-side {@link CDOAdminClient administrative interface} * after the connection {@link CDOAdminClient#isConnected() state} has changed. * * @author Eike Stepper * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. */ public interface ConnectionStateChangedEvent extends IEvent { public CDOAdminClient getSource(); public boolean isConnected(); } }