/** * Copyright 2011 Intuit Inc. All Rights Reserved */ package com.intuit.tank.vm.settings; /* * #%L * Intuit Tank Api * %% * Copyright (C) 2011 - 2015 Intuit Inc. * %% * 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 * #L% */ import org.apache.commons.configuration.HierarchicalConfiguration; import org.apache.commons.lang3.builder.ToStringBuilder; import com.intuit.tank.vm.api.enumerated.VMRegion; /** * InstanceDescription * * @author dangleton * */ public class ReportingInstance extends InstanceDescription { public ReportingInstance(HierarchicalConfiguration config, HierarchicalConfiguration defaultInstance) { super(config, defaultInstance); } /** * * @return */ public VMRegion getRegion() { VMRegion ret = VMRegion.US_EAST; String region = get("region"); if (region != null) { ret = VMRegion.valueOf(region); } return ret; } /** * * @return */ public String getReportingMode() { String ret = null; String mode = get("reporting-mode"); if (mode != null) { ret = mode; } return ret; } /** * @return whether to reuse stopped instances or to start new ones. */ public boolean getReuseInstances() { boolean ret = false; String reuse = get("reuse-instances"); if (reuse != null) { ret = Boolean.valueOf(reuse); } return ret; } /** * @return whether to reuse stopped instances or to start new ones. dependant */ public boolean isRegionDependent() { boolean ret = false; String regionDependent = get("region-dependent"); if (regionDependent != null) { ret = Boolean.valueOf(regionDependent); } return ret; } /** * * @return */ public String getZone() { return get("zone"); } /** * @{inheritDoc */ @Override public String toString() { return ToStringBuilder.reflectionToString(this); } }