public void _saveStdUdl <__t>(__t nT, string nUrl) where __t : IStdUdl { if (!this._isUdl(nUrl)) { return; } if (!this._haveUdl(nUrl)) { return; } string udlHeadstreamUrl_ = nUrl + @"*$descriptor.xml"; UdlHeadstream udlHeadstream_ = nT._getUdlHeadstream(); if (udlHeadstream_._isDirty()) { this._writeHeadstream(udlHeadstream_, udlHeadstreamUrl_); udlHeadstream_._runSave(); } string udlUrl_ = nUrl + @"*"; udlUrl_ += udlHeadstream_._getFileName(); if (nT._isDirty()) { this._writeHeadstream(nT, udlUrl_); } }
public void _newStdUdl <__t>(__t nT, string nUrl) where __t : IStdUdl { if (!this._isUdl(nUrl)) { return; } if (this._haveUdl(nUrl)) { return; } UrlParser urlParser_ = new UrlParser(nUrl); string dirUrl_ = urlParser_._urlDir(); Directory.CreateDirectory(dirUrl_); string udlHeadstreamUrl_ = nUrl + @"*$descriptor.xml"; UdlHeadstream udlHeadstream_ = nT._getUdlHeadstream(); this._writeHeadstream(udlHeadstream_, udlHeadstreamUrl_); string udlUrl_ = nUrl + @"*"; udlUrl_ += udlHeadstream_._getFileName(); this._writeHeadstream(nT, udlUrl_); }
public void _loadUdl <__t>(__t nT, string nUrl) where __t : IUdl { if (!this._isUdl(nUrl)) { return; } if (!this._haveUdl(nUrl)) { return; } string udlHeadstreamUrl_ = nUrl + @"*$descriptor.xml"; UdlHeadstream udlHeadstream_ = nT._getUdlHeadstream(); this._readHeadstream(udlHeadstream_, udlHeadstreamUrl_); ICulture culture_ = this._currentCulture(); string cultureName_ = culture_._cultureName(); string stringTableUrl_ = nUrl + "*$"; stringTableUrl_ += cultureName_; stringTableUrl_ += ".stringTable.xml"; if (!this._haveUfl(stringTableUrl_)) { stringTableUrl_ = nUrl + "*$stringTable.xml"; } if (this._haveUfl(stringTableUrl_)) { StringTable stringTable_ = nT._getStringTable(); this._readHeadstream(stringTable_, stringTableUrl_); } }
public __t _loadStdUdl <__t>(string nStdUdl, string nUrl) where __t : IStdUdl { if (!this._isUdl(nUrl)) { return(default(__t)); } if (!this._haveUdl(nUrl)) { return(default(__t)); } __t result_ = this._findInterface <__t>(nStdUdl); string udlHeadstreamUrl_ = nUrl + @"*$descriptor.xml"; UdlHeadstream udlHeadstream_ = result_._getUdlHeadstream(); this._readHeadstream(udlHeadstream_, udlHeadstreamUrl_); ICulture culture_ = this._currentCulture(); string cultureName_ = culture_._cultureName(); string stringTableUrl_ = nUrl + "*$"; stringTableUrl_ += cultureName_; stringTableUrl_ += ".stringTable.xml"; if (!this._haveUfl(stringTableUrl_)) { stringTableUrl_ = nUrl + "*$stringTable.xml"; } if (this._haveUfl(stringTableUrl_)) { StringTable stringTable_ = result_._getStringTable(); this._readHeadstream(stringTable_, stringTableUrl_); } string udlUrl_ = nUrl + @"*"; udlUrl_ += udlHeadstream_._getFileName(); this._readHeadstream(result_, udlUrl_); return(result_); }
bool _udlHaveFile <__t>(__t nT, string nUrl) where __t : IUdl { UdlHeadstream udlHeadstream_ = nT._getUdlHeadstream(); string fileName_ = udlHeadstream_._getFileName(); UrlParser urlParser_ = new UrlParser(nUrl); string archiveDir_ = urlParser_._urlDir(); string[] files_ = Directory.GetFiles(archiveDir_); if (files_.Length > 3) { return(true); } foreach (string i in files_) { int pos_ = i.LastIndexOf("\\"); string temp_ = i.Substring(pos_ + 1); if (temp_ != "$descriptor.xml" && temp_ != fileName_ && temp_ != "$stringTable.xml") { return(true); } } return(false); }
public void _deleteStdUdl <__t>(__t nT, string nUrl) where __t : IStdUdl { if (!this._isUdl(nUrl)) { return; } if (!this._haveUdl(nUrl)) { return; } if (this._udlHaveFile <IStdUdl>(nT, nUrl)) { return; } string udlHeadstreamUrl_ = nUrl + @"*$descriptor.xml"; this._delHeadstream(udlHeadstreamUrl_); UdlHeadstream udlHeadstream_ = nT._getUdlHeadstream(); string udlUrl_ = nUrl + @"*"; udlUrl_ += udlHeadstream_._getFileName(); this._delHeadstream(udlUrl_); }
public override void _runLoad(string nUrl) { base._runLoad(nUrl); string assemblyInfoUrl_ = nUrl + @"*$assembly.xml"; mAssemblyInfo._runLoad(assemblyInfoUrl_); UdlHeadstream udlHeadstream_ = this._getUdlHeadstream(); string fileName_ = udlHeadstream_._getFileName(); UrlParser urlParser_ = new UrlParser(nUrl); string assemblyPath_ = urlParser_._urlFile(fileName_); AssemblyName assemblyName_ = AssemblyName.GetAssemblyName(assemblyPath_); AppDomain appDomain_ = AppDomain.CurrentDomain; Assembly[] assemblies_ = appDomain_.GetAssemblies(); foreach (Assembly i in assemblies_) { if (string.Compare(i.FullName, assemblyName_.FullName) == 0) { mAssembly = i; return; } } UidSingleton uidSingleton_ = __singleton <UidSingleton> ._instance(); IEnumerable <Rid> rids_ = mAssemblyDescriptor._getRids(); foreach (Rid i in rids_) { uidSingleton_._addRid(i); } IEnumerable <string> dependences_ = mAssemblyDescriptor._getDependences(); foreach (string i in dependences_) { this._loadAssemblyUfl(i); } IEnumerable <Uid> uids_ = mAssemblyDescriptor._getUids(); foreach (Uid i in uids_) { uidSingleton_._addUid(i); Uid uid_ = i._getUid(); string uidUrl_ = uid_._getOptimal(); this._loadAssemblyUdl(uidUrl_); } IEnumerable <Uid> addins_ = mAssemblyDescriptor._getAddins(); foreach (Uid i in addins_) { uidSingleton_._addUid(i); Uid uid_ = i._getUid(); string uidUrl_ = uid_._getOptimal(); this._loadAddins(uidUrl_); } IEnumerable <string> plugins_ = mAssemblyDescriptor._getPlugins(); foreach (string i in plugins_) { this._loadPlugins(i); } if (null == mAssembly) { mAssembly = Assembly.LoadFrom(assemblyPath_); } }