Search in sources :

Example 1 with OpenStackKeyPair

use of com.att.cdp.openstack.model.OpenStackKeyPair in project AJSC by att.

the class AbstractOpenStackIdentityService method getKeyPair.

/**
 * @see com.att.cdp.zones.IdentityService#getKeyPair(java.lang.String)
 */
@SuppressWarnings("nls")
@Override
public KeyPair getKeyPair(String name) throws ZoneException {
    trackRequest();
    RequestState.put(RequestState.KEYPAIR, name);
    Context context = getContext();
    if (context.isLoggedIn()) {
        NovaConnector connector = ((OpenStackContext) context).getNovaConnector();
        KeyPairs pairs;
        try {
            pairs = connector.getClient().keyPairs().list().execute();
        } catch (OpenStackConnectException e) {
            throw new ContextConnectionException(EELFResourceManager.format(OSMsg.PAL_OS_CONNECTION_FAILED, "Compute", connector.getEndpoint()), e);
        } catch (OpenStackResponseException e) {
            throw new ZoneException(EELFResourceManager.format(OSMsg.PAL_OS_REQUEST_FAILURE, "get key-pair " + name), e);
        }
        if (pairs == null || pairs.getList() == null) {
            return null;
        }
        for (com.woorea.openstack.nova.model.KeyPair pair : pairs.getList()) {
            if (pair.getName().equals(name)) {
                return new OpenStackKeyPair(context, pair);
            }
        }
        return null;
    }
    throw new ZoneException("Unable to retrieve key-pairs when the context has not been logged in and authenticated");
}
Also used : OpenStackContext(com.att.cdp.openstack.OpenStackContext) Context(com.att.cdp.zones.Context) KeyPairs(com.woorea.openstack.nova.model.KeyPairs) OpenStackContext(com.att.cdp.openstack.OpenStackContext) ContextConnectionException(com.att.cdp.exceptions.ContextConnectionException) ZoneException(com.att.cdp.exceptions.ZoneException) OpenStackResponseException(com.woorea.openstack.base.client.OpenStackResponseException) OpenStackKeyPair(com.att.cdp.openstack.model.OpenStackKeyPair) NovaConnector(com.att.cdp.openstack.connectors.NovaConnector) OpenStackConnectException(com.woorea.openstack.base.client.OpenStackConnectException)

Example 2 with OpenStackKeyPair

use of com.att.cdp.openstack.model.OpenStackKeyPair in project AJSC by att.

the class AbstractOpenStackIdentityService method createKeyPair.

/**
 * @see com.att.cdp.zones.IdentityService#createKeyPair(com.att.cdp.zones.model.KeyPair)
 */
@SuppressWarnings("nls")
@Override
public KeyPair createKeyPair(KeyPair keyPair) throws ZoneException {
    trackRequest();
    RequestState.put(RequestState.KEYPAIR, keyPair.getName());
    Context context = getContext();
    if (context.isLoggedIn()) {
        NovaConnector connector = ((OpenStackContext) context).getNovaConnector();
        com.woorea.openstack.nova.model.KeyPair pair;
        try {
            pair = connector.getClient().keyPairs().create(keyPair.getName()).execute();
        } catch (OpenStackConnectException e) {
            throw new ContextConnectionException(EELFResourceManager.format(OSMsg.PAL_OS_CONNECTION_FAILED, "Compute", connector.getEndpoint()), e);
        } catch (OpenStackResponseException e) {
            String reason = null;
            if (e.getResponse() != null && e.getResponse().getInputStream() != null) {
                try {
                    reason = IOUtils.toString(e.getResponse().getInputStream(), "UTF-8");
                } catch (IOException e1) {
                }
                throw new ZoneException(EELFResourceManager.format(OSMsg.PAL_OS_REQUEST_FAILURE, "create key-pair " + keyPair.getName() + " " + reason), e);
            }
            throw new ZoneException(EELFResourceManager.format(OSMsg.PAL_OS_REQUEST_FAILURE, "create key-pair " + keyPair.getName()), e);
        }
        return new OpenStackKeyPair(context, pair);
    }
    throw new ZoneException("Unable to create key-pairs when the context has not been logged in and authenticated");
}
Also used : OpenStackContext(com.att.cdp.openstack.OpenStackContext) Context(com.att.cdp.zones.Context) IOException(java.io.IOException) OpenStackContext(com.att.cdp.openstack.OpenStackContext) ContextConnectionException(com.att.cdp.exceptions.ContextConnectionException) ZoneException(com.att.cdp.exceptions.ZoneException) OpenStackResponseException(com.woorea.openstack.base.client.OpenStackResponseException) OpenStackKeyPair(com.att.cdp.openstack.model.OpenStackKeyPair) NovaConnector(com.att.cdp.openstack.connectors.NovaConnector) OpenStackConnectException(com.woorea.openstack.base.client.OpenStackConnectException)

Example 3 with OpenStackKeyPair

use of com.att.cdp.openstack.model.OpenStackKeyPair in project AJSC by att.

the class AbstractOpenStackIdentityService method getKeyPairs.

/**
 * @see com.att.cdp.zones.IdentityService#getKeyPairs()
 */
@SuppressWarnings("nls")
@Override
public List<KeyPair> getKeyPairs() throws ZoneException {
    trackRequest();
    Context context = getContext();
    if (context.isLoggedIn()) {
        NovaConnector connector = ((OpenStackContext) context).getNovaConnector();
        KeyPairs pairs = null;
        try {
            pairs = connector.getClient().keyPairs().list().execute();
        } catch (OpenStackConnectException e) {
            throw new ContextConnectionException(EELFResourceManager.format(OSMsg.PAL_OS_CONNECTION_FAILED, "Compute", connector.getEndpoint()), e);
        } catch (OpenStackResponseException e) {
            throw new ZoneException(EELFResourceManager.format(OSMsg.PAL_OS_REQUEST_FAILURE, "get key-pair list"), e);
        }
        ArrayList<KeyPair> list = new ArrayList<>();
        for (com.woorea.openstack.nova.model.KeyPair pair : pairs.getList()) {
            OpenStackKeyPair kp = new OpenStackKeyPair(context, pair);
            list.add(kp);
        }
        return list;
    }
    throw new ZoneException("Unable to retrieve key-pairs when the context has not been logged in and authenticated");
}
Also used : OpenStackContext(com.att.cdp.openstack.OpenStackContext) Context(com.att.cdp.zones.Context) KeyPair(com.att.cdp.zones.model.KeyPair) OpenStackKeyPair(com.att.cdp.openstack.model.OpenStackKeyPair) KeyPairs(com.woorea.openstack.nova.model.KeyPairs) ArrayList(java.util.ArrayList) OpenStackContext(com.att.cdp.openstack.OpenStackContext) ContextConnectionException(com.att.cdp.exceptions.ContextConnectionException) ZoneException(com.att.cdp.exceptions.ZoneException) OpenStackResponseException(com.woorea.openstack.base.client.OpenStackResponseException) OpenStackKeyPair(com.att.cdp.openstack.model.OpenStackKeyPair) NovaConnector(com.att.cdp.openstack.connectors.NovaConnector) OpenStackConnectException(com.woorea.openstack.base.client.OpenStackConnectException)

Aggregations

ContextConnectionException (com.att.cdp.exceptions.ContextConnectionException)3 ZoneException (com.att.cdp.exceptions.ZoneException)3 OpenStackContext (com.att.cdp.openstack.OpenStackContext)3 NovaConnector (com.att.cdp.openstack.connectors.NovaConnector)3 OpenStackKeyPair (com.att.cdp.openstack.model.OpenStackKeyPair)3 Context (com.att.cdp.zones.Context)3 OpenStackConnectException (com.woorea.openstack.base.client.OpenStackConnectException)3 OpenStackResponseException (com.woorea.openstack.base.client.OpenStackResponseException)3 KeyPairs (com.woorea.openstack.nova.model.KeyPairs)2 KeyPair (com.att.cdp.zones.model.KeyPair)1 IOException (java.io.IOException)1 ArrayList (java.util.ArrayList)1