in core/src/main/java/org/apache/ftpserver/main/Daemon.java [87:128]
private static FtpServer getConfiguration(String[] args) throws Exception {
FtpServer server = null;
if (args == null || args.length < 2) {
LOG.info("Using default configuration....");
server = new FtpServerFactory().createServer();
} else if ((args.length == 2) && args[1].equals("-default")) {
// supported for backwards compatibility, but not documented
System.out
.println("The -default switch is deprecated, please use --default instead");
LOG.info("Using default configuration....");
server = new FtpServerFactory().createServer();
} else if ((args.length == 2) && args[1].equals("--default")) {
LOG.info("Using default configuration....");
server = new FtpServerFactory().createServer();
} else if (args.length == 2) {
LOG.info("Using xml configuration file " + args[1] + "...");
FileSystemXmlApplicationContext ctx = new FileSystemXmlApplicationContext(
args[1]);
if (ctx.containsBean("server")) {
server = (FtpServer) ctx.getBean("server");
} else {
String[] beanNames = ctx.getBeanNamesForType(FtpServer.class);
if (beanNames.length == 1) {
server = (FtpServer) ctx.getBean(beanNames[0]);
} else if (beanNames.length > 1) {
System.out
.println("Using the first server defined in the configuration, named "
+ beanNames[0]);
server = (FtpServer) ctx.getBean(beanNames[0]);
} else {
System.err
.println("XML configuration does not contain a server configuration");
}
}
} else {
throw new FtpException("Invalid configuration option");
}
return server;
}