blob: 90025dde026a776618bbd4d2fc57e84533c132fd [file] [log] [blame]
// Copyright (c) 2014 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
#include "CefResponse_N.h"
#include "include/cef_response.h"
#include "jni_scoped_helpers.h"
#include "jni_util.h"
namespace {
const char kCefClassName[] = "CefResponse";
CefRefPtr<CefResponse> GetSelf(jlong self) {
return reinterpret_cast<CefResponse*>(self);
}
} // namespace
JNIEXPORT jobject JNICALL
Java_org_cef_network_CefResponse_1N_N_1Create(JNIEnv* env, jclass cls) {
CefRefPtr<CefResponse> response = CefResponse::Create();
ScopedJNIResponse jresponse(env, response);
return jresponse.Release();
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1Dispose(JNIEnv* env,
jobject obj,
jlong self) {
SetCefForJNIObject_sync<CefResponse>(env, obj, nullptr, kCefClassName);
}
JNIEXPORT jboolean JNICALL
Java_org_cef_network_CefResponse_1N_N_1IsReadOnly(JNIEnv* env,
jobject obj,
jlong self) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return JNI_FALSE;
return response->IsReadOnly() ? JNI_TRUE : JNI_FALSE;
}
JNIEXPORT jobject JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetError(JNIEnv* env,
jobject obj,
jlong self) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return nullptr;
return NewJNIErrorCode(env, response->GetError());
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetError(JNIEnv* env,
jobject obj,
jlong self,
jobject jerrorCode) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
if (!jerrorCode)
return;
response->SetError(GetJNIErrorCode(env, jerrorCode));
}
JNIEXPORT jint JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetStatus(JNIEnv* env,
jobject obj,
jlong self) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return 0;
return response->GetStatus();
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetStatus(JNIEnv* env,
jobject obj,
jlong self,
jint jstatus) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
return response->SetStatus(jstatus);
}
JNIEXPORT jstring JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetStatusText(JNIEnv* env,
jobject obj,
jlong self) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return nullptr;
return NewJNIString(env, response->GetStatusText());
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetStatusText(JNIEnv* env,
jobject obj,
jlong self,
jstring jstatus) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
response->SetStatusText(GetJNIString(env, jstatus));
}
JNIEXPORT jstring JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetMimeType(JNIEnv* env,
jobject obj,
jlong self) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return nullptr;
return NewJNIString(env, response->GetMimeType());
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetMimeType(JNIEnv* env,
jobject obj,
jlong self,
jstring jmimeType) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
response->SetMimeType(GetJNIString(env, jmimeType));
}
JNIEXPORT jstring JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetHeaderByName(JNIEnv* env,
jobject obj,
jlong self,
jstring jname) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return nullptr;
return NewJNIString(env, response->GetHeaderByName(GetJNIString(env, jname)));
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetHeaderByName(JNIEnv* env,
jobject obj,
jlong self,
jstring jname,
jstring jvalue,
jboolean joverride) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
return response->SetHeaderByName(GetJNIString(env, jname),
GetJNIString(env, jvalue),
joverride != JNI_FALSE);
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1GetHeaderMap(JNIEnv* env,
jobject obj,
jlong self,
jobject jheaderMap) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
CefResponse::HeaderMap headerMap;
response->GetHeaderMap(headerMap);
SetJNIStringMultiMap(env, jheaderMap, headerMap);
}
JNIEXPORT void JNICALL
Java_org_cef_network_CefResponse_1N_N_1SetHeaderMap(JNIEnv* env,
jobject obj,
jlong self,
jobject jheaderMap) {
CefRefPtr<CefResponse> response = GetSelf(self);
if (!response)
return;
CefResponse::HeaderMap headerMap;
GetJNIStringMultiMap(env, jheaderMap, headerMap);
response->SetHeaderMap(headerMap);
}