Clover.NET coverage report - Coverage for s2dao.net

Coverage timestamp: 2006年5月18日 15:09:15

File Stats: LOC: 62   Methods: 2
NCLOC: 40 Classes: 1
 
Source File Conditionals Statements Methods TOTAL
Seasar.Dao.Impl\DaoMetaDataFactoryImpl.cs 100.0% 100.0% 100.0% 100.0%
coverage
1   #region Copyright
2   /*
3   * Copyright 2005 the Seasar Foundation and the Others.
4   *
5   * Licensed under the Apache License, Version 2.0 (the "License");
6   * you may not use this file except in compliance with the License.
7   * You may obtain a copy of the License at
8   *
9   * http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
14   * either express or implied. See the License for the specific language
15   * governing permissions and limitations under the License.
16   */
17   #endregion
18  
19   using System;
20   using System.Collections;
21   using Seasar.Extension.ADO;
22   using Seasar.Extension.ADO.Impl;
23  
24   namespace Seasar.Dao.Impl
25   {
26   public class DaoMetaDataFactoryImpl : IDaoMetaDataFactory
27   {
28   private Hashtable daoMetaDataCache = new Hashtable();
29   private IDataSource dataSource;
30   private ICommandFactory commandFactory;
31   private IDataReaderFactory dataReaderFactory;
32   private IDatabaseMetaData dbMetaData;
33  
34 14 public DaoMetaDataFactoryImpl(IDataSource dataSource,
35   ICommandFactory commandFactory, IDataReaderFactory dataReaderFactory)
36   {
37 14 this.dataSource = dataSource;
38 14 this.commandFactory = commandFactory;
39 14 this.dataReaderFactory = dataReaderFactory;
40 14 this.dbMetaData = new DatabaseMetaDataImpl(dataSource);
41   }
42  
43   #region IDaoMetaDataFactory メンバ
44  
45 6 public IDaoMetaData GetDaoMetaData(Type daoType)
46   {
47 6 lock(this)
48   {
49 6 string key = daoType.FullName;
50 6 IDaoMetaData dmd = (IDaoMetaData) daoMetaDataCache[key];
51 6 if(dmd != null) return dmd;
52 5 dmd = new DaoMetaDataImpl(daoType, dataSource, commandFactory,
53   dataReaderFactory, dbMetaData);
54 5 daoMetaDataCache[key] = dmd;
55 5 return dmd;
56   }
57   }
58  
59   #endregion
60   }
61   }
62