blob: 8d7e7ee316081585b46c2be7003da7d5d3c9273a [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2016 BREDEX GmbH.
* 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:
* BREDEX GmbH - initial API and implementation and/or initial documentation
*******************************************************************************/
package org.eclipse.jubula.client;
import org.apache.commons.lang.Validate;
import org.eclipse.jdt.annotation.Nullable;
/**
* Registry for ONE, already running and connected <code>AUT</code> instance
*
* @author BREDEX GmbH
* @since 3.2
*/
public enum AUTRegistry {
/** Singleton */
INSTANCE;
/** the AUT */
private AUT m_aut;
/**
* register the AUT
*
* @param aut
* the AUT which should be registered
* @throws IllegalArgumentException
* - if AUT is not already Connected
*/
public void register(AUT aut) {
Validate.isTrue(aut.isConnected());
unregister();
m_aut = aut;
}
/**
* Unregister the currently registered AUT
*/
public void unregister() {
if (m_aut != null) {
m_aut = null;
}
}
/**
* @return the currently registered AUT
*/
@Nullable
public AUT get() {
return m_aut;
}
}