ATMLDataAccessLibrary.db.daos.SignalDAO.getTSFLibraryByNameSpace C# (CSharp) Method

getTSFLibraryByNameSpace() public method

public getTSFLibraryByNameSpace ( String libraryNameSpace ) : dbTSFLibrary
libraryNameSpace String
return ATMLDataAccessLibrary.model.dbTSFLibrary
        public dbTSFLibrary getTSFLibraryByNameSpace(String libraryNameSpace)
        {
            dbTSFLibrary lb = null;
            String sql = "SELECT * FROM "
                        + dbTSFLibrary._TABLE_NAME
                        + " WHERE "
                        + dbTSFLibrary._TARGET_NAMESPACE
                        + " = ?";
            OleDbParameter[] dbParams = { CreateParameter(dbTSFLibrary._ID, libraryNameSpace) };
            OleDbDataReader reader = ExecuteSqlQuery(sql, dbParams);
            if (reader != null)
            {
                bool reading = reader.Read();
                if (reading)
                {
                    lb = new dbTSFLibrary();
                    while (reading)
                    {
                        lb.load(reader);
                        lb.Signals = getTSFLibrarySignals(lb.id);
                        reading = reader.Read();
                    }
                }
                reader.Close();
                reader.Dispose();
            }
            return lb;
        }

Usage Example

        public static SignalModel GetSignalModel(string nameSpace, string signalName)
        {
            SignalModel model = null;
            SignalModelLibrary library = null;
            SignalManager sm = Instance;
            if (sm._signalModelLibraryCache.ContainsKey(nameSpace))
            {
                library = sm._signalModelLibraryCache[nameSpace];
            }
            else
            {
                SignalDAO dao = new SignalDAO();
                dbTSFLibrary tsfLib = dao.getTSFLibraryByNameSpace(nameSpace);
                if (tsfLib != null)
                {
                    string content = tsfLib.content;
                    MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(content));
                    library = new SignalModelLibrary(ms);
                    sm._signalModelLibraryCache.Add(nameSpace, library);
                }
            }
            if (library != null)
                model = library.GetSignalModel(signalName);

            return model;
        }