You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by db...@apache.org on 2002/04/02 08:15:07 UTC

cvs commit: xml-xalan/c/src/XalanTransformer XalanTransformer.cpp XalanTransformer.hpp

dbertoni    02/04/01 22:15:07

  Modified:    c/src/XalanTransformer XalanTransformer.cpp
                        XalanTransformer.hpp
  Log:
  Added new implementation for reporting messages and warnings.
  
  Revision  Changes    Path
  1.46      +14 -3     xml-xalan/c/src/XalanTransformer/XalanTransformer.cpp
  
  Index: XalanTransformer.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XalanTransformer/XalanTransformer.cpp,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- XalanTransformer.cpp	28 Mar 2002 07:08:47 -0000	1.45
  +++ XalanTransformer.cpp	2 Apr 2002 06:15:07 -0000	1.46
  @@ -2,7 +2,7 @@
    * The Apache Software License, Version 1.1
    *
    *
  - * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * Copyright (c) 2001-2002 The Apache Software Foundation.  All rights 
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -59,6 +59,11 @@
   
   
   #include <algorithm>
  +#if defined(XALAN_OLD_STREAM_HEADERS)
  +#include <iostream.h>
  +#else
  +#include <iostream>
  +#endif
   
   
   
  @@ -112,6 +117,7 @@
   #include "XalanDefaultDocumentBuilder.hpp"
   #include "XalanDefaultParsedSource.hpp"
   #include "XalanTransformerOutputStream.hpp"
  +#include "XalanTransformerProblemListener.hpp"
   #include "XercesDOMParsedSource.hpp"
   
   
  @@ -135,6 +141,11 @@
   	m_entityResolver(0),
   	m_errorHandler(0),
   	m_problemListener(0),
  +#if defined(XALAN_NO_NAMESPACES)
  +	m_warningStream(&cerr),
  +#else
  +	m_warningStream(&std::cerr),
  +#endif
   	m_stylesheetExecutionContext(new StylesheetExecutionContextDefault)
   {
   #if defined(XALAN_USE_ICU)
  @@ -489,7 +500,7 @@
   		// Create a problem listener and send output to a XalanDOMString.
   		DOMStringPrintWriter	thePrintWriter(theErrorMessage);
   
  -		ProblemListenerDefault	theProblemListener(&thePrintWriter);
  +		XalanTransformerProblemListener		theProblemListener(m_warningStream, &thePrintWriter);
   
   		if (m_problemListener == 0)
   		{
  @@ -1005,7 +1016,7 @@
   		// pushing params, since there could be a problem resolving a QName.
   		DOMStringPrintWriter	thePrintWriter(theErrorMessage);
   
  -		ProblemListenerDefault	theProblemListener(&thePrintWriter);
  +		XalanTransformerProblemListener		theProblemListener(m_warningStream, &thePrintWriter);
   
   		if (m_problemListener == 0)
   		{
  
  
  
  1.38      +37 -0     xml-xalan/c/src/XalanTransformer/XalanTransformer.hpp
  
  Index: XalanTransformer.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XalanTransformer/XalanTransformer.hpp,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- XalanTransformer.hpp	8 Feb 2002 00:24:56 -0000	1.37
  +++ XalanTransformer.hpp	2 Apr 2002 06:15:07 -0000	1.38
  @@ -67,6 +67,12 @@
   #include <cassert>
   #include <vector>
   
  +#if defined(XALAN_OLD_STREAMS)
  +class ostream;
  +#else
  +#include <iosfwd>
  +#endif
  +
   
   
   #include <XPath/XalanQNameByValue.hpp>
  @@ -102,6 +108,12 @@
   {
   public:
   	
  +#if defined(XALAN_NO_NAMESPACES)
  +	typedef ostream			StreamType;
  +#else
  +	typedef std::ostream	StreamType;
  +#endif
  +
   	XalanTransformer();
   
   	virtual
  @@ -585,6 +597,29 @@
   	void
   	setIndent(int	indentAmount);
   
  +	/**
  +	 * Set the ostream instance for reporting warnings and messages.  The default
  +	 * is std::cerr.  If set to null, no warnings or messages will be written.
  +	 * 
  +	 * @param theStream A pointer to the ostream instance.
  +	 */
  +	void
  +	setWarningStream(StreamType*	theStream)
  +	{
  +		m_warningStream = theStream;
  +	}
  +
  +	/**
  +	 * Get the current warning stream ostream instance
  +	 *
  +	 * @return A pointer to the instance.  Can be null.
  +	 */
  +	StreamType*
  +	getWarningStream() const
  +	{
  +		return m_warningStream;
  +	}
  +
   #if defined(XALAN_NO_NAMESPACES)
   	typedef vector<const XalanCompiledStylesheet*>		CompiledStylesheetPtrVectorType;
   	typedef vector<const XalanParsedSource*>			ParsedSourcePtrVectorType;
  @@ -724,6 +759,8 @@
   	ErrorHandler*							m_errorHandler;
   
   	ProblemListener*						m_problemListener;
  +
  +	StreamType*								m_warningStream;
   
   	// This should always be the latest data member!!!
   	StylesheetExecutionContextDefault*		m_stylesheetExecutionContext;
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org