O PropertiesFile4Delphi consiste em uma biblioteca para lidar com arquivos de configuração no formato chave=valor .
Muitas vezes, por diversos motivos, é necessário parametrizar a aplicação a partir de um mecanismo de configuração. No Delphi é comum utilizar arquivos INI para armazenar as configurações, mas trabalhar com esses arquivos é um pouco repetitivo e improdutivo. A API PropertiesFile4Delphi facilita esse trabalho com arquivos de configuração substituindo o uso de arquivos INI. É uma API para gerenciar arquivos de texto simples, que são escritos com a sintaxe chave=valor , armazenando uma chave única por linha.
Para obter uma cópia local instalada e funcionando, siga estas etapas simples.
Para usar esta biblioteca é necessária uma versão atualizada do Delphi IDE (XE ou superior).
Clonar o repositório
git clone https://github.com/ezequieljuliano/PropertiesFile4Delphi.git
Adicione o "Search Path" do seu IDE ou do seu projeto nos seguintes diretórios:
PropertiesFile4Delphisrc
Crie ou edite arquivos de configuração declarando uma variável do tipo IPropertiesFile e usando a implementação TPropertiesFileStorage:
uses
PropertiesFile,
PropertiesFile.Storage;
procedure Save;
var
propertiesFile: IPropertiesFile;
begin
propertiesFile := TPropertiesFileStorage.Create;
propertiesFile.PropertyItem['app.title'] := 'Properties File For Delphi';
propertiesFile.PropertyItem['app.version'] := '1.0.0';
propertiesFile.SaveToFile('application.properties');
end;
uses
PropertiesFile,
PropertiesFile.Storage;
procedure Load;
var
propertiesFile: IPropertiesFile;
begin
propertiesFile := TPropertiesFileStorage.Create;
propertiesFile.LoadFromFile('application.properties');
Self.Caption := propertiesFile.PropertyItem['app.title'] + '-' + propertiesFile.PropertyItem['app.version'];
end;
A biblioteca PropertiesFile4Delphi fornece um conjunto de classes de mapeamento. Dessa forma, você pode trabalhar diretamente com as classes, em vez de manipular arquivos em seu código-fonte. O primeiro passo para utilizar o mecanismo de configuração em uma aplicação é criar uma classe específica para armazenar os parâmetros desejados e anotá-la com [PropertiesFile] e herdar a classe TPropertiesFileObject .
Exemplo de mapeamento:
uses
PropertiesFile.Mapping;
type
[PropertiesFile('security.properties')]
TSecurityConfig = class(TPropertiesFileObject)
private
[NotNull]
[PropertyItem('username')]
fUsername: string;
[NotNull]
[PropertyItem('password')]
fPassword: string;
public
property Username: string read fUsername write fUsername;
property Password: string read fPassword write fPassword;
end;
Quando a classe é destruída o arquivo é salvo automaticamente:
procedure Load;
var
securityConfig: TSecurityConfig;
begin
securityConfig := TSecurityConfig.Create;
try
securityConfig.Username := 'admin';
securityConfig.Password := 'admin';
finally
securityConfig.Free;
end;
end;
Ao instanciar a classe os dados são carregados:
procedure Login;
var
securityConfig: TSecurityConfig;
begin
securityConfig := TSecurityConfig.Create;
try
Login(securityConfig.Username, securityConfig.Password);
finally
securityConfig.Free;
end;
end;
Mapeamentos de campo suportados:
Consulte os problemas em aberto para obter uma lista dos recursos propostos (e dos problemas conhecidos).
As contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Qualquer contribuição que você fizer será muito apreciada .
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
) Distribuído sob a LICENÇA APACHE. Consulte LICENSE
para obter mais informações.
Para entrar em contato conosco utilize as opções:
https://github.com/ezequieljuliano/PropertiesFile4Delphi