001package jmri.jmrix.sprog.pi.pisprognano; 002 003import jmri.util.SystemType; 004 005/** 006 * Definition of objects to handle configuring a layout connection via an SPROG 007 * SerialDriverAdapter object. 008 * 009 * @author Andrew Crosland Copyright (C) 2016 010 */ 011public class ConnectionConfig extends jmri.jmrix.AbstractSerialConnectionConfig { 012 013 /** 014 * Ctor for an object being created during load process; Swing init is 015 * deferred. 016 * @param p Serial port adapter. 017 */ 018 public ConnectionConfig(jmri.jmrix.SerialPortAdapter p) { 019 super(p); 020 } 021 022 /** 023 * Ctor for a connection configuration with no preexisting adapter. 024 * {@link #setInstance()} will fill the adapter member. 025 */ 026 public ConnectionConfig() { 027 super(); 028 } 029 030 @Override 031 public String name() { 032 return Bundle.getMessage("PiSprogNanoCSTitle"); 033 } 034 035 @Override 036 protected String[] getPortFriendlyNames() { 037 if (SystemType.isWindows()) { 038 return new String[]{"SPROG"}; 039 } 040 return new String[]{}; 041 } 042 043 /** 044 * {@inheritDoc} 045 */ 046 @Override 047 protected void setInstance() { 048 if(adapter == null) { 049 adapter = new PiSprogNanoSerialDriverAdapter(); 050 } 051 } 052 053}