public BuildingOptionDecorator(IBuilding buildingBase, String optionId)
            : base(buildingBase)
        {
            DataSet ds = BuildingGateway.FindOption(optionId);

            if (ds.Tables[0].Rows.Count > 0)
            {
                this.m_name  = (String)ds.Tables[0].Rows[0]["OptionName"];
                this.m_price = (Decimal)ds.Tables[0].Rows[0]["OptionPrice"];
            }
        }
        public BuildingOptionDecorator(IBuilding buildingBase, String optionId)
            : base(buildingBase)
        {
            // Assign base
            m_buildingBase = buildingBase;

            // read definition for this instance of decorator from decorator table using the decorator gateway
            DataSet ds = BuildingGateway.FindOption(optionId);

            if (ds.Tables[0].Rows.Count > 0)
            {
                m_name  = (String)ds.Tables[0].Rows[0]["OptionName"];
                m_price = (Decimal)ds.Tables[0].Rows[0]["OptionPrice"];
            }
        }