litesoft
@ 939
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
package org.litesoft.language.server; import java.io.*; import org.litesoft.core.typeutils.Objects; import java.util.*; import org.litesoft.core.annotations.*; import org.litesoft.core.typeutils.Objects; import org.litesoft.core.typeutils.*; import org.litesoft.language.model.*; /** * */ public class MasterUnvalidatedAccessorPropertyFile implements MasterUnvalidatedAccessor { /** * @return Keys in the order they were stored! */ @Override public @NotNull @Immutable List<String> getKeys() { return mPropertyFileAccessor.getKeys(); } @Override public @NullOrSignificantText String getValue( String pKey ) { String zProperty = mPropertyFileAccessor.getProperty( pKey ); return Strings.deNull( zProperty ).isEmpty() ? null : zProperty; } @Override public @Nullable MasterUnvalidatedEntry getEntry( String pKey ) { String zValue = getValue( pKey ); return (zValue == null) ? null : new MasterUnvalidatedEntry( pKey, zValue ); } @Override public @NotNull MasterUnvalidatedAccessor reload() throws IOException { return new MasterUnvalidatedAccessorPropertyFile( mPropertyFileAccessor ); } /** * Writes all the properties to a properties file retaining the order of the properties as they were read and retaining any comments as they were read as well. * * @throws IOException */ public void save() throws IOException { mPropertyFileAccessor.save(); } public MasterUnvalidatedAccessorPropertyFile( String pPropertyFile ) throws IOException { this( new File( Strings.assertNotNullNotEmpty( "PropertyFile", pPropertyFile ) ) ); } public MasterUnvalidatedAccessorPropertyFile( File pPropertyFile ) throws IOException { this( new SimplePropertyFileAccessorImpl( Objects.assertNotNull( "PropertyFile", pPropertyFile ) ) ); } public MasterUnvalidatedAccessorPropertyFile( SimplePropertyFileAccessor pPropertyFileAccessor ) { mPropertyFileAccessor = pPropertyFileAccessor; } private SimplePropertyFileAccessor mPropertyFileAccessor; } |