This commit is contained in:
@@ -184,14 +184,7 @@ public class HttpResponse extends Response<HttpContext, HttpRequest> {
|
|||||||
* @return HttpResponse
|
* @return HttpResponse
|
||||||
*/
|
*/
|
||||||
public HttpResponse addCookie(HttpCookie... cookies) {
|
public HttpResponse addCookie(HttpCookie... cookies) {
|
||||||
if (this.cookies == null) {
|
this.cookies = Utility.append(this.cookies, cookies);
|
||||||
this.cookies = cookies;
|
|
||||||
} else {
|
|
||||||
HttpCookie[] news = new HttpCookie[this.cookies.length + cookies.length];
|
|
||||||
System.arraycopy(this.cookies, 0, news, 0, this.cookies.length);
|
|
||||||
System.arraycopy(cookies, 0, news, this.cookies.length, cookies.length);
|
|
||||||
this.cookies = news;
|
|
||||||
}
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -203,18 +196,7 @@ public class HttpResponse extends Response<HttpContext, HttpRequest> {
|
|||||||
* @return HttpResponse
|
* @return HttpResponse
|
||||||
*/
|
*/
|
||||||
public HttpResponse addCookie(Collection<HttpCookie> cookies) {
|
public HttpResponse addCookie(Collection<HttpCookie> cookies) {
|
||||||
if (cookies == null || cookies.isEmpty()) return this;
|
this.cookies = Utility.append(this.cookies, cookies);
|
||||||
if (this.cookies == null) {
|
|
||||||
this.cookies = cookies.toArray(new HttpCookie[cookies.size()]);
|
|
||||||
} else {
|
|
||||||
HttpCookie[] news = new HttpCookie[this.cookies.length + cookies.size()];
|
|
||||||
System.arraycopy(this.cookies, 0, news, 0, this.cookies.length);
|
|
||||||
int i = this.cookies.length;
|
|
||||||
for (HttpCookie cookie : cookies) {
|
|
||||||
news[i++] = cookie;
|
|
||||||
}
|
|
||||||
this.cookies = news;
|
|
||||||
}
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
package org.redkale.util;
|
package org.redkale.util;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.*;
|
||||||
import java.net.*;
|
import java.net.*;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.charset.*;
|
import java.nio.charset.*;
|
||||||
@@ -128,6 +128,53 @@ public final class Utility {
|
|||||||
return UUID.randomUUID().toString().replace("-", "");
|
return UUID.randomUUID().toString().replace("-", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数组上追加数据
|
||||||
|
*
|
||||||
|
* @param <T> 泛型
|
||||||
|
* @param array 原数组
|
||||||
|
* @param objs 待追加数据
|
||||||
|
*
|
||||||
|
* @return 新数组
|
||||||
|
*/
|
||||||
|
public static <T> T[] append(final T[] array, final T... objs) {
|
||||||
|
if (array == null || array.length == 0) return objs;
|
||||||
|
final T[] news = (T[]) Array.newInstance(array.getClass().getComponentType(), array.length + objs.length);
|
||||||
|
System.arraycopy(array, 0, news, 0, array.length);
|
||||||
|
System.arraycopy(objs, 0, news, array.length, objs.length);
|
||||||
|
return news;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数组上追加数据
|
||||||
|
*
|
||||||
|
* @param <T> 泛型
|
||||||
|
* @param array 原数组
|
||||||
|
* @param objs 待追加数据
|
||||||
|
*
|
||||||
|
* @return 新数组
|
||||||
|
*/
|
||||||
|
public static <T> T[] append(final T[] array, final Collection<T> objs) {
|
||||||
|
if (objs == null || objs.isEmpty()) return array;
|
||||||
|
if (array == null) {
|
||||||
|
T one = null;
|
||||||
|
for (T t : objs) {
|
||||||
|
if (t != null) one = t;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (one == null) return array;
|
||||||
|
T[] news = (T[]) Array.newInstance(one.getClass(), objs.size());
|
||||||
|
return objs.toArray(news);
|
||||||
|
}
|
||||||
|
T[] news = (T[]) Array.newInstance(array.getClass().getComponentType(), array.length + objs.size());
|
||||||
|
System.arraycopy(array, 0, news, 0, array.length);
|
||||||
|
int index = -1;
|
||||||
|
for (T t : objs) {
|
||||||
|
news[array.length + (++index)] = t;
|
||||||
|
}
|
||||||
|
return news;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除掉字符串数组中包含指定的字符串
|
* 删除掉字符串数组中包含指定的字符串
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user