Home | History | Annotate | Download | only in push_messaging
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "config.h"
      6 #include "modules/push_messaging/PushError.h"
      7 
      8 #include "core/dom/ExceptionCode.h"
      9 #include "wtf/OwnPtr.h"
     10 
     11 namespace blink {
     12 
     13 PassRefPtrWillBeRawPtr<DOMException> PushError::take(ScriptPromiseResolver*, WebType* webErrorRaw)
     14 {
     15     OwnPtr<WebType> webError = adoptPtr(webErrorRaw);
     16     switch (webError->errorType) {
     17     case WebPushError::ErrorTypeAbort:
     18         return DOMException::create(AbortError, webError->message);
     19     case WebPushError::ErrorTypeUnknown:
     20         return DOMException::create(UnknownError);
     21     }
     22     ASSERT_NOT_REACHED();
     23     return DOMException::create(UnknownError);
     24 }
     25 
     26 void PushError::dispose(WebType* webErrorRaw)
     27 {
     28     delete webErrorRaw;
     29 }
     30 
     31 } // namespace blink
     32