All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xsd.Settings.xsd Maven / Gradle / Ivy

Go to download

This project is about configuration of applications and about parameterization of Objects. This library offers annotations (and annotation processors), parsers, typing, observing changes, serialization, cloning and more when working with settings and/or object parameters. Settings and its features can be declared using an xml format. The library offers syntax support for settings and parameters in a loosely coupled manner. You are not restricted to built in syntax, you can provide your own. At runtime this library tracks keys for which a default is used because they are not found in settings. Also it tracks unused keys. You can stack features for settings such as caching, preparing keys and values, readonlyness, threadsafety, helpsupport, reading / parsing from input. You can easily develop your own features for settings.

There is a newer version: 12.2
Show newest version


   
      Schema for Settings in applications.
   
   
   
      
         basically settings are read from url's, features and preprocessors can be added
      
      
         
            
               when you specify urls at this level settings wil be parsed using the current default parser.
                  You can control which parser is the default on the settings factory implementation. Instead you can also
                  read settings from urls using a feature where you can declare the parser that will be used.
               
            
         
         
         
      
      
         
            by default settings can be modified
         
      
      
         
            by default settings will be cached to minimize expensive string conversion
         
      
      
         
            by default settings will not be auto reloaded
         
      
      
         
            by default settings will not be obervable, if they are you can add observers to the settings
         
      
   

   
      
         You can extend your settings with features provided in this library or develop your own features
      
      
         
            
               decorators may need input for their functionality, a URL to retrieve help info for example.
               Such a feature requires a constructor with EnhancedMap and URL[].
            
         
      
      
         
            Used by ParsingProperties. A feature class must extend AbstractPropertiesDecorator and requires a constructor with EnhancedMap as argument.
         
      
      
         
            Used by ParsingProperties. You can write and use your own factory implementing
                com.vectorprint.configuration.binding.settings.EnhancedMapBindingFactory for syntax binding.
         
      
   

   
      
         a preprocessor preprocesses keys and / or values before addition.
      
      
         
            
               you can in- or exclude (depending on optIn) certain keys from preprocessing
            
         
      
      
         
            the preprocessor must be a subclass of AbstractPrepareKeyValue
         
      
      
         
            determines if a key should be preprocessed when registered or when not registered
         
      
   
   
   
      
         definition of settings, their features and key/value preprocessors to use in an application
      
   






© 2015 - 2024 Weber Informatics LLC | Privacy Policy