nsDocShellLoadInfo.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  2. /* This Source Code Form is subject to the terms of the Mozilla Public
  3. * License, v. 2.0. If a copy of the MPL was not distributed with this
  4. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  5. #ifndef nsDocShellLoadInfo_h__
  6. #define nsDocShellLoadInfo_h__
  7. // Helper Classes
  8. #include "nsCOMPtr.h"
  9. #include "nsString.h"
  10. // Interfaces Needed
  11. #include "nsIDocShellLoadInfo.h"
  12. class nsIInputStream;
  13. class nsISHEntry;
  14. class nsIURI;
  15. class nsIDocShell;
  16. class nsDocShellLoadInfo : public nsIDocShellLoadInfo
  17. {
  18. public:
  19. nsDocShellLoadInfo();
  20. NS_DECL_ISUPPORTS
  21. NS_DECL_NSIDOCSHELLLOADINFO
  22. protected:
  23. virtual ~nsDocShellLoadInfo();
  24. protected:
  25. nsCOMPtr<nsIURI> mReferrer;
  26. nsCOMPtr<nsIURI> mOriginalURI;
  27. nsCOMPtr<nsIPrincipal> mTriggeringPrincipal;
  28. bool mLoadReplace;
  29. bool mInheritPrincipal;
  30. bool mPrincipalIsExplicit;
  31. bool mForceAllowDataURI;
  32. bool mSendReferrer;
  33. nsDocShellInfoReferrerPolicy mReferrerPolicy;
  34. nsDocShellInfoLoadType mLoadType;
  35. nsCOMPtr<nsISHEntry> mSHEntry;
  36. nsString mTarget;
  37. nsCOMPtr<nsIInputStream> mPostDataStream;
  38. nsCOMPtr<nsIInputStream> mHeadersStream;
  39. bool mIsSrcdocLoad;
  40. nsString mSrcdocData;
  41. nsCOMPtr<nsIDocShell> mSourceDocShell;
  42. nsCOMPtr<nsIURI> mBaseURI;
  43. // This will be true if this load is triggered by attribute changes.
  44. // See nsILoadInfo.isFromProcessingFrameAttributes
  45. bool mIsFromProcessingFrameAttributes;
  46. };
  47. #endif /* nsDocShellLoadInfo_h__ */