Java源码示例:org.ini4j.Wini
示例1
/**
* Writes the contents of a Section HashMap to disk.
*
* @param parser A Wini pointed at a file on disk.
* @param section A section containing settings to be written to the file.
*/
private static void writeSection(Wini parser, SettingSection section)
{
// Write the section header.
String header = section.getName();
// Write this section's values.
HashMap<String, Setting> settings = section.getSettings();
Set<String> keySet = settings.keySet();
for (String key : keySet)
{
Setting setting = settings.get(key);
parser.put(header, setting.getKey(), setting.getValueAsString());
}
}
示例2
public void save() throws IOException {
if (this.inifile == null || this.inifile.isEmpty()) {
return;
}
File f = new File(this.inifile);
if (!f.exists()) {
f.getParentFile().mkdirs();
f.createNewFile();
}
Wini ini = new Wini(f);
ini.put("server", "host", this.bindHost);
ini.put("server", "port", this.bindPort);
ini.put("server", "thread", this.threadNum);
ini.put("redis", "host", this.redisHost);
ini.put("redis", "port", this.redisPort);
ini.put("redis", "db", this.redisDb);
ini.put("watch", "interval", this.interval);
ini.store();
}
示例3
/**
* @param basePath the base path to attach to, if relative file name is used
* @param fileName the name of the file to be loaded
* @param enableMultiOption the state of multi-option configuration flag
*/
private Ini loadFile ( String basePath, String fileName
, boolean enableMultiOption ) throws Exception
{
String full_name = FilenameUtils.concat(basePath, fileName);
File file = new File(full_name);
if (file.exists() && file.isFile()) {
Ini ini = new Wini();
Config config = ini.getConfig();
config.setMultiSection(true);
config.setMultiOption(enableMultiOption);
config.setGlobalSection(true);
config.setComment(true);
ini.setFile(file);
ini.setComment(COMMENT_LINE_CHARS);
try(InputStreamReader inputStreamReader = TextEncoding.getInputStreamReader(file)){
ini.load(inputStreamReader);
}
return ini;
}
return null;
}
示例4
public WebshellFeatures(){
try {
File file=new File("config/webshellFeatures.ini");
if(file.exists()){
ini=new Wini(file);
MonitorClientApplication.log.info("load webshellFeatures.ini success");
}else{
MonitorClientApplication.log.error("load webshellFeatures.ini error");
}
} catch (IOException e) {
e.printStackTrace();
MonitorClientApplication.log.error("load webshellFeatures.ini error");
}
}
示例5
public void load() throws IOException {
if (this.inifile == null || this.inifile.isEmpty()) {
return;
}
File f = new File(this.inifile);
if (f.exists() && f.isFile()) {
Wini ini = new Wini(f);
String bindHost = ini.get("server", "host", String.class);
Integer bindPort = ini.get("server", "port", Integer.class);
Integer threadNum = ini.get("server", "thread", Integer.class);
String redisHost = ini.get("redis", "host", String.class);
Integer redisPort = ini.get("redis", "port", Integer.class);
Integer redisDb = ini.get("redis", "db", Integer.class);
Integer interval = ini.get("watch", "interval", Integer.class);
if (bindHost != null) {
this.bindHost = bindHost;
}
if (bindPort != null) {
this.bindPort = bindPort;
}
if(threadNum != null) {
this.threadNum = threadNum;
}
if (redisHost != null) {
this.redisHost = redisHost;
}
if (redisPort != null) {
this.redisPort = redisPort;
}
if (redisDb != null) {
this.redisDb = redisDb;
}
if (interval != null) {
this.interval = interval;
}
}
}
示例6
public static AccessEnforcement loadIniFile(final File iniFile) throws IOException {
System.out.println("Loading client permissions: " + iniFile.toString());
// Load ini file
final Wini ini = new Wini(iniFile);
// Create map of usernames to their permissions
final ConcurrentMap<String, ClientPermissions> permissionMap = new ConcurrentHashMap<String, ClientPermissions>();
// Create set of all known secrets
final Set<String> knownSecrets = new HashSet<>();
// Iterate over each section (each section is a secret)
final Collection<Profile.Section> secretSections = ini.values();
for (Profile.Section secretSection : secretSections) {
// Update set of known secrets
final String secretName = secretSection.getName();
knownSecrets.add(secretName);
// Each value in this section represents a user's permission to this secret
for (final Entry<String, String> userPermission : secretSection.entrySet()) {
final String username = userPermission.getKey();
final String permissions = userPermission.getValue();
// PRint username and secret
//System.out.print(username + "." + secretName + "\t\t = ");
// Parse permissions
final String[] permissionArray = permissions.split(",");
//System.out.println(Arrays.toString(permissionArray));
// Add permissions from the comma-separated list
permissionMap.putIfAbsent(username, new ClientPermissions());
final ClientPermissions clientPermissions = permissionMap.get(username);
for (final String permissionString : permissionArray) {
// Sanitize string and convert to enumeration
final Permissions permission = Permissions.valueOf(permissionString.trim().toUpperCase());
clientPermissions.addPermission(secretName, permission);
}
}
}
return new AccessEnforcement(permissionMap, knownSecrets);
}
示例7
public static String getUrl(ConfiguracoesCte config, ServicosEnum servico) throws CteException {
try {
String secao = "CTe_" + config.getEstado() + "_"
+ (config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "H" : "P");
InputStream is;
if (ObjetoCTeUtil.verifica(config.getArquivoWebService()).isPresent()) {
File arquivo = new File(config.getArquivoWebService());
if (!arquivo.exists())
throw new FileNotFoundException("Arquivo WebService" + config.getArquivoWebService() + " não encontrado");
is = new FileInputStream(arquivo);
} else {
is = WebServiceCteUtil.class.getResourceAsStream("/WebServicesCte.ini");
}
Wini ini = new Wini();
ini.getConfig().setLowerCaseOption(true);
ini.load(is);
is.close();
String url = ini.get(secao, "usar");
if (!config.getEstado().equals(EstadosEnum.MG) && !config.getEstado().equals(EstadosEnum.MS)
&& !config.getEstado().equals(EstadosEnum.MT) && !config.getEstado().equals(EstadosEnum.SP) && !config.getEstado().equals(EstadosEnum.PR)) {
secao = url;
}
if (servico.equals(ServicosEnum.DISTRIBUICAO_DFE)) {
secao = "CTe_AN_" + (config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "H" : "P");
}
url = ini.get(secao, servico.getServico().toLowerCase());
ObjetoCTeUtil.verifica(url).orElseThrow(() -> new CteException(
"WebService de " + servico + " não encontrado para " + config.getEstado().getNome()));
LoggerUtil.log(WebServiceCteUtil.class, "[URL]: " + servico + ": " + url);
return url;
} catch (IOException e) {
throw new CteException(e.getMessage());
}
}
示例8
/**
* Retorna a URL para consulta de operações do SEFAZ.<br>
*
* <p>
* O método carrega o arquivo <b>WebServicesNfe.ini</b> que contêm as
* URL's de operações do SEFAZ, busca pela seção no arquivo .ini que
* corresponda com os argumentos <b>tipo</b>, <b>config</b>, <b>servico</b>
* e retorna essa URL.
* </p>
*
* @param config interface que contêm os dados necessários para a comunicação.
* @param tipoDocumento DocumentoEnum.NFE e ConstantesUtil.NFCE
* @param tipoServico é a operação que se deseja fazer.<br>
* Ex.: para consultas status deserviço no ambiente de produção
* use ServicosEnum.NfeStatusServico_4.00
*
* @return url String que representa a URL do serviço.
* @throws NfeException
*
* @see ConfiguracoesNfe
* @see ConstantesUtil
**/
public static String getUrl(ConfiguracoesNfe config, DocumentoEnum tipoDocumento, ServicosEnum tipoServico) throws NfeException {
try {
String secao = tipoDocumento.getTipo() + "_" + config.getEstado() + "_"
+ (config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "H" : "P");
InputStream is;
if(ObjetoUtil.verifica(config.getArquivoWebService()).isPresent()){
File arquivo = new File(config.getArquivoWebService());
if(!arquivo.exists())
throw new FileNotFoundException("Arquivo WebService"+config.getArquivoWebService()+" não encontrado");
is = new FileInputStream(arquivo);
}else{
is = WebServiceUtil.class.getResourceAsStream("/WebServicesNfe.ini");
}
Wini ini = new Wini();
ini.getConfig().setLowerCaseOption(true);
ini.load(is);
is.close();
String url = ini.get(secao, "usar");
//URLS CONSULTA CADASTO
if (tipoServico.equals(ServicosEnum.CONSULTA_CADASTRO) && (
config.getEstado().equals(EstadosEnum.PA) ||
config.getEstado().equals(EstadosEnum.AM) ||
config.getEstado().equals(EstadosEnum.AL) ||
config.getEstado().equals(EstadosEnum.AP) ||
config.getEstado().equals(EstadosEnum.DF) ||
config.getEstado().equals(EstadosEnum.PI) ||
config.getEstado().equals(EstadosEnum.RJ) ||
config.getEstado().equals(EstadosEnum.RO) ||
config.getEstado().equals(EstadosEnum.SE) ||
config.getEstado().equals(EstadosEnum.TO))) {
throw new NfeException("Estado não possui Consulta Cadastro.");
// URLS de ambiente nacional
} else if (tipoServico.equals(ServicosEnum.DISTRIBUICAO_DFE)
|| tipoServico.equals(ServicosEnum.MANIFESTACAO)) {
secao = config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "NFe_AN_H" : "NFe_AN_P";
} else if (!tipoServico.equals(ServicosEnum.URL_CONSULTANFCE)
&& !tipoServico.equals(ServicosEnum.URL_QRCODE) && ObjetoUtil.verifica(url).isPresent()) {
secao = url;
} else if (config.isContigenciaSCAN()) {
// SVC-RS
if (config.getEstado().equals(EstadosEnum.GO) || config.getEstado().equals(EstadosEnum.AM)
|| config.getEstado().equals(EstadosEnum.BA) || config.getEstado().equals(EstadosEnum.CE)
|| config.getEstado().equals(EstadosEnum.MA) || config.getEstado().equals(EstadosEnum.MS)
|| config.getEstado().equals(EstadosEnum.MT) || config.getEstado().equals(EstadosEnum.PA)
|| config.getEstado().equals(EstadosEnum.PE) || config.getEstado().equals(EstadosEnum.PI)
|| config.getEstado().equals(EstadosEnum.PR)) {
secao = tipoDocumento.getTipo() + "_SVRS_"
+ (config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "H" : "P");
// SVC-AN
} else {
secao = tipoDocumento.getTipo() + "_SVC-AN_"
+ (config.getAmbiente().equals(AmbienteEnum.HOMOLOGACAO) ? "H" : "P");
}
}
url = ini.get(secao, tipoServico.getServico().toLowerCase());
ObjetoUtil.verifica(url).orElseThrow(() -> new NfeException(
"WebService de " + tipoServico + " não encontrado para " + config.getEstado().getNome()));
LoggerUtil.log(WebServiceUtil.class, "[URL]: " + tipoServico + ": " + url);
return url;
} catch (IOException e) {
throw new NfeException(e.getMessage());
}
}