func init // adds using namespace sys.add_use('System.IO') // initialize instance params = '' + d("FileName") sys.add_object(this.codename, 'FileInfo', params) if(linked("onError")) this.setfield('ex', 'ex' + this.id) end // initialize properties sys.set_typed_field(104, 'IsReadOnly') // makes implementation methods for properties sys._prop_init('Directory', 1, 0, 0) sys._prop_init('DirectoryName', 1, 0, 2) sys._prop_init('Exists', 1, 0, 104) sys._prop_init('IsReadOnly', 1, 1, 104) sys._prop_init('Length', 1, 0, 105) sys._prop_init('Name', 1, 0, 2) // makes implementation of methods as properties sys._mtd_as_prop_init('AppendText()') sys._mtd_as_prop_init('Create()') sys._mtd_as_prop_init('CreateText()') sys._mtd_as_prop_init('GetAccessControl()') sys._mtd_as_prop_init('OpenRead()') sys._mtd_as_prop_init('OpenText()') sys._mtd_as_prop_init('OpenWrite()') sys._mtd_as_prop_init('ToString()') sys._mtd_as_prop_init('FileInfo') // makes implementation of simple methods sys._method_init('Decrypt') sys._method_init('Delete') sys._method_init('Encrypt') // initialize common events and properties include("FileSystemInfo-init") end func doConstructor(data) linked("onError") ? blk.println('try {').inc() : '' blk.println(this.codename, ' = new FileInfo(', d("FileName"), ');') if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doCopyTo(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onCopyTo")) event("onCopyTo", this.codename + '.CopyTo(' + d("Destination") + ')') else blk.println(this.codename, '.CopyTo(', d("Destination"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doCopyTo2(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onCopyTo")) event("onCopyTo", this.codename + '.CopyTo(' + d("Destination") + ', ' + d("Overwrite") + ')') else blk.println(this.codename, '.CopyTo(', d("Destination"), ', ', d("Overwrite"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doGetAccessControl2(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onGetAccessControl")) event("onGetAccessControl", this.codename + '.GetAccessControl(' + d("Sections") + ')') else blk.println(this.codename, '.GetAccessControl(', d("Sections"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doMoveTo(data) linked("onError") ? blk.println('try {').inc() : '' blk.println(this.codename, '.MoveTo(', d("Destination"), ');') if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doOpen(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onOpen")) event("onOpen", this.codename + '.Open(' + (linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value) + ')') else blk.println(this.codename, '.Open(', linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value, ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doOpen2(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onOpen")) event("onOpen", this.codename + '.Open(' + (linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value) + ', ' + d("Access") + ')') else blk.println(this.codename, '.Open(', linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value, ', ', d("Access"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doOpen3(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onOpen")) event("onOpen", this.codename + '.Open(' + (linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value) + ', ' + d("Access") + ', ' + d("Share") + ')') else blk.println(this.codename, '.Open(', linked("Mode") ? d("Mode") : 'FileMode.' + this.props('FileMode').value, ', ', d("Access"), ', ', d("Share"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doReplace(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onReplace")) event("onReplace", this.codename + '.Replace(' + d("Destination") + ', ' + d("Backup") + ')') else blk.println(this.codename, '.Replace(', d("Destination"), ', ', d("Backup"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doReplace2(data) linked("onError") ? blk.println('try {').inc() : '' if(linked("onReplace")) event("onReplace", this.codename + '.Replace(' + d("Destination") + ', ' + d("Backup") + ', ' + d("IgnoreErrors") + ')') else blk.println(this.codename, '.Replace(', d("Destination"), ', ', d("Backup"), ', ', d("IgnoreErrors"), ');') end if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end func doSetAccessControl(data) linked("onError") ? blk.println('try {').inc() : '' blk.println(this.codename, '.SetAccessControl(', d("Security"), ');') if(linked("onError")) blk.dec().println('} catch (Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end include("FileSystemInfo")