/// <summary>
    /// Initializes a new instance of the <see cref="SourceModelProxy"/> class.
    /// </summary>
    /// <param name="source">The source.</param>
    public SourceModelProxy(SourceModelServices source)
    {
      if (source == null)
      {
        throw new ArgumentNullException("source", "source is null.");
      }

      Contract.EndContractBlock();

      this.activeProject = GetNonNull(source.ActiveProject, "source.ActiveProject");
      this.activeSourceFile = GetNonNull(source.ActiveSourceFile, "source.ActiveSourceFile");
    }
        /// <summary>
        /// Initializes a new instance of the <see cref="SourceModelProxy"/> class.
        /// </summary>
        /// <param name="source">The source.</param>
        public SourceModelProxy(SourceModelServices source)
        {
            if (source == null)
            {
                throw new ArgumentNullException("source", "source is null.");
            }

            Contract.EndContractBlock();

            this.activeProject    = GetNonNull(source.ActiveProject, "source.ActiveProject");
            this.activeSourceFile = GetNonNull(source.ActiveSourceFile, "source.ActiveSourceFile");
        }