java - Controlling when object is created -


suppose need create object follows , set values

    filemetadata filemeta = filecontainer.getmetadata();      filemeta.setfilename("file name");     filemeta.setserver("my box");     filemeta.setdirectory("/path/to/dir");     filemeta.setfiletype(filetype.properties); 

i later intend use object reference useful.

i'd recognize fact possible user of system not set fields, instance, 1 may forget

    filemeta.setdatemodified(12345); 

is somehow possible guarantee (or specific) fields set before making object available?

there nothing in language enforce (except having lone visible constructor takes required parameters), can idiomatically, variation on builder pattern , method chaining:

filemetadata filemeta = new filemetadatabuilder(filecontainer.getmetadata())     .setfilename("file name")     .setserver("my box")     .setdirectory("/path/to/dir")     .setfiletype(filetype.properties)     .build(); 

the build() method can ensure required fields set before calling appropriate constructor of filemetadata required parameters.


Comments

Popular posts from this blog

How do you change vbulletin's home page to the forums instead of the default (CMS or Activity Stream)? -

java - stack overflow exception on xml transformation -