org.apache.openejb.arquillian.embedded.EmbeddedTomEEConfiguration Maven / Gradle / Ivy
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.openejb.arquillian.embedded;
import org.apache.openejb.OpenEJBRuntimeException;
import org.apache.openejb.arquillian.common.IO;
import org.apache.openejb.arquillian.common.Prefixes;
import org.apache.openejb.arquillian.common.TomEEConfiguration;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
/**
* @version $Rev$ $Date$
*/
@Prefixes({"tomee", "tomee.embedded"})
public class EmbeddedTomEEConfiguration extends TomEEConfiguration {
private int httpsPort = 8443;
private boolean ssl = false;
private String keystoreFile;
private String keystorePass;
private String keystoreType = "JKS";
private String clientAuth;
private String keyAlias;
private String sslProtocol;
public int getHttpsPort() {
return httpsPort;
}
public void setHttpsPort(final int httpsPort) {
this.httpsPort = httpsPort;
}
public boolean isSsl() {
return ssl;
}
public void setSsl(final boolean ssl) {
this.ssl = ssl;
}
public String getKeystoreFile() {
return keystoreFile;
}
public void setKeystoreFile(final String keystoreFile) {
this.keystoreFile = keystoreFile;
}
public String getKeystorePass() {
return keystorePass;
}
public void setKeystorePass(final String keystorePass) {
this.keystorePass = keystorePass;
}
public String getKeystoreType() {
return keystoreType;
}
public void setKeystoreType(final String keystoreType) {
this.keystoreType = keystoreType;
}
public String getClientAuth() {
return clientAuth;
}
public void setClientAuth(final String clientAuth) {
this.clientAuth = clientAuth;
}
public String getKeyAlias() {
return keyAlias;
}
public void setKeyAlias(final String keyAlias) {
this.keyAlias = keyAlias;
}
public String getSslProtocol() {
return sslProtocol;
}
public void setSslProtocol(final String sslProtocol) {
this.sslProtocol = sslProtocol;
}
@Override
public int[] portsAlreadySet() {
final List value = new ArrayList();
if (getStopPort() > 0) {
value.add(getStopPort());
}
if (getHttpPort() > 0) {
value.add(getHttpPort());
}
if (getHttpsPort() > 0) {
value.add(getHttpsPort());
}
return toInts(value);
}
public Properties systemPropertiesAsProperties() {
if (properties == null || properties.isEmpty()) {
return new Properties();
}
final Properties properties = new Properties();
final ByteArrayInputStream bais = new ByteArrayInputStream(getProperties().getBytes());
try {
properties.load(bais);
} catch (IOException e) {
throw new OpenEJBRuntimeException(e);
} finally {
try {
IO.close(bais);
} catch (IOException ignored) {
// no-op
}
}
return properties;
}
}