
net.officefloor.woof.WoofLoaderSettings Maven / Gradle / Ivy
/*-
* #%L
* Web on OfficeFloor
* %%
* Copyright (C) 2005 - 2020 Daniel Sagenschneider
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
* #L%
*/
package net.officefloor.woof;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.function.BiFunction;
import java.util.function.Consumer;
import java.util.function.Function;
import net.officefloor.compile.impl.ApplicationOfficeFloorSource;
import net.officefloor.compile.impl.util.CompileUtil;
import net.officefloor.compile.properties.Property;
import net.officefloor.configuration.ConfigurationContext;
import net.officefloor.configuration.ConfigurationItem;
import net.officefloor.frame.api.escalate.Escalation;
import net.officefloor.frame.api.manage.Office;
import net.officefloor.frame.api.manage.OfficeFloor;
import net.officefloor.frame.api.source.SourceContext;
import net.officefloor.server.http.HttpServer;
import net.officefloor.woof.model.objects.WoofObjectsModel;
import net.officefloor.woof.model.resources.WoofResourcesModel;
import net.officefloor.woof.model.teams.WoofTeamsModel;
import net.officefloor.woof.model.woof.WoofModel;
/**
* Settings for the {@link WoofLoader}.
*
* @author Daniel Sagenschneider
*/
public class WoofLoaderSettings {
/**
* Default path for WoOF configuration file.
*/
public static final String DEFAULT_WOOF_PATH = "application.woof";
/**
* {@link Office} name to alias configuration name.
*/
private static final Map officeToAliasNames = new HashMap<>();
static {
officeToAliasNames.put(ApplicationOfficeFloorSource.OFFICE_NAME, new String[] { "application" });
}
/**
* {@link ThreadLocal} for the {@link Office} name to
* {@link WoofLoaderConfiguration}.
*/
private static final ThreadLocal
© 2015 - 2025 Weber Informatics LLC | Privacy Policy