Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
空白の変更を非表示
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
テキストスタイル
外観を変更
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Eclipse formatting - IntelliJ formatting
作成日
8 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
4 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
288 行
すべてコピー
27 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
300 行
すべてコピー
/*
/*
* Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved.
*
*
* This program and the accompanying materials are made available under the
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
* http://www.eclipse.org/legal/epl-2.0.
*
*
* This Source Code may also be made available under the following Secondary
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
* https://www.gnu.org/software/classpath/license.html.
*
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
*/
package javax.ws.rs.client;
package javax.ws.rs.client;
import java.lang.annotation.Annotation;
import java.lang.annotation.Annotation;
import java.util.Arrays;
import java.util.Arrays;
import java.util.Locale;
import java.util.Locale;
import javax.ws.rs.core.Form;
import javax.ws.rs.core.Form;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.Variant;
import javax.ws.rs.core.Variant;
/**
/**
* Encapsulates message entity including the associated variant information.
* Encapsulates message entity including the associated variant information.
*
*
* @param <T> entity type.
* @param <T> entity type.
* @author Marek Potociar
* @author Marek Potociar
*/
*/
public final class Entity<T> {
public final class Entity<T> {
private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
private final T entity;
private final T entity;
private final Variant variant;
private final Variant variant;
private final Annotation[] annotations;
private final Annotation[] annotations;
/**
/**
* Create an entity using a supplied content media type.
* Create an entity using a supplied content media type.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @param mediaType entity content type.
* @param mediaType entity content type.
* @return entity instance.
* @return entity instance.
*/
*/
public static <T> Entity<T> entity(final T entity, final MediaType mediaType) {
public static <T> Entity<T> entity(final T entity, final MediaType mediaType) {
return new Entity<T>(entity, mediaType);
return new Entity<T>(entity, mediaType);
}
}
/**
/**
* Create an entity using a supplied content media type.
* Create an entity using a supplied content media type.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @param mediaType entity content type.
* @param mediaType entity content type.
* @param annotations entity annotations.
* @param annotations entity annotations.
* @return entity instance.
* @return entity instance.
*/
*/
public static <T> Entity<T> entity(final T entity, final MediaType mediaType, final Annotation[] annotations) {
public static <T> Entity<T> entity(final T entity, final MediaType mediaType, final Annotation[] annotations) {
return new Entity<T>(entity, mediaType, annotations);
return new Entity<T>(entity, mediaType, annotations);
}
}
/**
/**
* Create an entity using a supplied content media type.
* Create an entity using a supplied content media type.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @param mediaType entity content type.
* @param mediaType entity content type.
* @return entity instance.
* @return entity instance.
コピー
コピー済み
コピー
コピー済み
* @throws IllegalArgumentException if the supplied string cannot be parsed
or is {@code null}.
* @throws IllegalArgumentException if the supplied string cannot be parsed
*
or is {@code null}.
*/
*/
public static <T> Entity<T> entity(final T entity, final String mediaType) {
public static <T> Entity<T> entity(final T entity, final String mediaType) {
return new Entity<T>(entity, MediaType.valueOf(mediaType));
return new Entity<T>(entity, MediaType.valueOf(mediaType));
}
}
/**
/**
* Create an entity using a supplied content media type.
* Create an entity using a supplied content media type.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @param variant entity {@link Variant variant} information.
* @param variant entity {@link Variant variant} information.
* @return entity instance.
* @return entity instance.
*/
*/
public static <T> Entity<T> entity(final T entity, final Variant variant) {
public static <T> Entity<T> entity(final T entity, final Variant variant) {
return new Entity<T>(entity, variant);
return new Entity<T>(entity, variant);
}
}
/**
/**
* Create an entity using a supplied content media type.
* Create an entity using a supplied content media type.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @param variant entity {@link Variant variant} information.
* @param variant entity {@link Variant variant} information.
* @param annotations entity annotations.
* @param annotations entity annotations.
* @return entity instance.
* @return entity instance.
*/
*/
public static <T> Entity<T> entity(final T entity, final Variant variant, final Annotation[] annotations) {
public static <T> Entity<T> entity(final T entity, final Variant variant, final Annotation[] annotations) {
return new Entity<T>(entity, variant, annotations);
return new Entity<T>(entity, variant, annotations);
}
}
/**
/**
* Create a {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity.
* Create a {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @return {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity instance.
* @return {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity instance.
*/
*/
public static <T> Entity<T> text(final T entity) {
public static <T> Entity<T> text(final T entity) {
return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE);
return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE);
}
}
/**
/**
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity.
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity instance.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity instance.
*/
*/
public static <T> Entity<T> xml(final T entity) {
public static <T> Entity<T> xml(final T entity) {
return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE);
return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE);
}
}
/**
/**
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity.
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity instance.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity instance.
*/
*/
public static <T> Entity<T> json(final T entity) {
public static <T> Entity<T> json(final T entity) {
return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE);
return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE);
}
}
/**
/**
* Create a {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity.
* Create a {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
* @return {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity instance.
* @return {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity instance.
*/
*/
public static <T> Entity<T> html(final T entity) {
public static <T> Entity<T> html(final T entity) {
return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE);
return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE);
}
}
/**
/**
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity.
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity.
*
*
* @param <T> entity Java type.
* @param <T> entity Java type.
* @param entity entity data.
* @param entity entity data.
コピー
コピー済み
コピー
コピー済み
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity
instance.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity
*
instance.
*/
*/
public static <T> Entity<T> xhtml(final T entity) {
public static <T> Entity<T> xhtml(final T entity) {
return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE);
return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE);
}
}
/**
/**
コピー
コピー済み
コピー
コピー済み
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
form entity.
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
*
form entity.
*
*
* @param form form data.
* @param form form data.
コピー
コピー済み
コピー
コピー済み
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
form entity instance.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
*
form entity instance.
*/
*/
public static Entity<Form> form(final Form form) {
public static Entity<Form> form(final Form form) {
return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE);
return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE);
}
}
/**
/**
コピー
コピー済み
コピー
コピー済み
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
form entity.
* Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
*
form entity.
*
*
* @param formData multivalued map representing the form data.
* @param formData multivalued map representing the form data.
コピー
コピー済み
コピー
コピー済み
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
form entity instance.
* @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED}
*
form entity instance.
*/
*/
public static Entity<Form> form(final MultivaluedMap<String, String> formData) {
public static Entity<Form> form(final MultivaluedMap<String, String> formData) {
return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE);
return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE);
}
}
private Entity(final T entity, final MediaType mediaType) {
private Entity(final T entity, final MediaType mediaType) {
this(entity, new Variant(mediaType, (Locale) null, null), null);
this(entity, new Variant(mediaType, (Locale) null, null), null);
}
}
private Entity(final T entity, final Variant variant) {
private Entity(final T entity, final Variant variant) {
this(entity, variant, null);
this(entity, variant, null);
}
}
private Entity(final T entity, final MediaType mediaType, final Annotation[] annotations) {
private Entity(final T entity, final MediaType mediaType, final Annotation[] annotations) {
this(entity, new Variant(mediaType, (Locale) null, null), annotations);
this(entity, new Variant(mediaType, (Locale) null, null), annotations);
}
}
private Entity(final T entity, final Variant variant, final Annotation[] annotations) {
private Entity(final T entity, final Variant variant, final Annotation[] annotations) {
this.entity = entity;
this.entity = entity;
this.variant = variant;
this.variant = variant;
this.annotations = (annotations == null) ? EMPTY_ANNOTATIONS : annotations;
this.annotations = (annotations == null) ? EMPTY_ANNOTATIONS : annotations;
}
}
/**
/**
* Get entity {@link Variant variant} information.
* Get entity {@link Variant variant} information.
*
*
* @return entity variant information.
* @return entity variant information.
*/
*/
public Variant getVariant() {
public Variant getVariant() {
return variant;
return variant;
}
}
/**
/**
* Get entity media type.
* Get entity media type.
*
*
* @return entity media type.
* @return entity media type.
*/
*/
public MediaType getMediaType() {
public MediaType getMediaType() {
return variant.getMediaType();
return variant.getMediaType();
}
}
/**
/**
* Get entity encoding.
* Get entity encoding.
*
*
* @return entity encoding.
* @return entity encoding.
*/
*/
public String getEncoding() {
public String getEncoding() {
return variant.getEncoding();
return variant.getEncoding();
}
}
/**
/**
* Get entity language.
* Get entity language.
*
*
* @return entity language.
* @return entity language.
*/
*/
public Locale getLanguage() {
public Locale getLanguage() {
return variant.getLanguage();
return variant.getLanguage();
}
}
/**
/**
* Get entity data.
* Get entity data.
*
*
* @return entity data.
* @return entity data.
*/
*/
public T getEntity() {
public T getEntity() {
return entity;
return entity;
}
}
/**
/**
* Get the entity annotations.
* Get the entity annotations.
*
*
コピー
コピー済み
コピー
コピー済み
* @return entity annotations if set, an empty annotation array if no
entity annotations have been specified.
* @return entity annotations if set, an empty annotation array if no
*
entity annotations have been specified.
*/
*/
public Annotation[] getAnnotations() {
public Annotation[] getAnnotations() {
return annotations;
return annotations;
}
}
@Override
@Override
public boolean equals(final Object o) {
public boolean equals(final Object o) {
コピー
コピー済み
コピー
コピー済み
if (this == o)
if (this == o)
{
return true;
return true;
コピー
コピー済み
コピー
コピー済み
if (!(o instanceof Entity))
}
if (!(o instanceof Entity))
{
return false;
return false;
コピー
コピー済み
コピー
コピー済み
}
Entity entity1 = (Entity) o;
Entity entity1 = (Entity) o;
コピー
コピー済み
コピー
コピー済み
if (!Arrays.equals(annotations, entity1.annotations))
if (!Arrays.equals(annotations, entity1.annotations))
{
return false;
return false;
コピー
コピー済み
コピー
コピー済み
if (entity != null ? !entity.equals(entity1.entity) : entity1.entity != null)
}
if (entity != null ? !entity.equals(entity1.entity) : entity1.entity != null)
{
return false;
return false;
コピー
コピー済み
コピー
コピー済み
if (variant != null ? !variant.equals(entity1.variant) : entity1.variant != null)
}
if (variant != null ? !variant.equals(entity1.variant) : entity1.variant != null)
{
return false;
return false;
コピー
コピー済み
コピー
コピー済み
}
return true;
return true;
}
}
@Override
@Override
public int hashCode() {
public int hashCode() {
int result = entity != null ? entity.hashCode() : 0;
int result = entity != null ? entity.hashCode() : 0;
result = 31 * result + (variant != null ? variant.hashCode() : 0);
result = 31 * result + (variant != null ? variant.hashCode() : 0);
result = 31 * result + Arrays.hashCode(annotations);
result = 31 * result + Arrays.hashCode(annotations);
return result;
return result;
}
}
@Override
@Override
public String toString() {
public String toString() {
return "Entity{" +
return "Entity{" +
コピー
コピー済み
コピー
コピー済み
"entity=" + entity +
"entity=" + entity +
", variant=" + variant +
", variant=" + variant +
", annotations=" + Arrays.toString(annotations) +
", annotations=" + Arrays.toString(annotations) +
'}';
'}';
}
}
}
}
保存された差分
原文
ファイルを開く
/* * Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at * http://www.eclipse.org/legal/epl-2.0. * * This Source Code may also be made available under the following Secondary * Licenses when the conditions for such availability set forth in the * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, * version 2 with the GNU Classpath Exception, which is available at * https://www.gnu.org/software/classpath/license.html. * * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 */ package javax.ws.rs.client; import java.lang.annotation.Annotation; import java.util.Arrays; import java.util.Locale; import javax.ws.rs.core.Form; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.core.Variant; /** * Encapsulates message entity including the associated variant information. * * @param <T> entity type. * @author Marek Potociar */ public final class Entity<T> { private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0]; private final T entity; private final Variant variant; private final Annotation[] annotations; /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final MediaType mediaType) { return new Entity<T>(entity, mediaType); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @param annotations entity annotations. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final MediaType mediaType, final Annotation[] annotations) { return new Entity<T>(entity, mediaType, annotations); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @return entity instance. * @throws IllegalArgumentException if the supplied string cannot be parsed or is {@code null}. */ public static <T> Entity<T> entity(final T entity, final String mediaType) { return new Entity<T>(entity, MediaType.valueOf(mediaType)); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param variant entity {@link Variant variant} information. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final Variant variant) { return new Entity<T>(entity, variant); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param variant entity {@link Variant variant} information. * @param annotations entity annotations. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final Variant variant, final Annotation[] annotations) { return new Entity<T>(entity, variant, annotations); } /** * Create a {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity instance. */ public static <T> Entity<T> text(final T entity) { return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity instance. */ public static <T> Entity<T> xml(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity instance. */ public static <T> Entity<T> json(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE); } /** * Create a {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity instance. */ public static <T> Entity<T> html(final T entity) { return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity instance. */ public static <T> Entity<T> xhtml(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} form entity. * * @param form form data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} form entity instance. */ public static Entity<Form> form(final Form form) { return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} form entity. * * @param formData multivalued map representing the form data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} form entity instance. */ public static Entity<Form> form(final MultivaluedMap<String, String> formData) { return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE); } private Entity(final T entity, final MediaType mediaType) { this(entity, new Variant(mediaType, (Locale) null, null), null); } private Entity(final T entity, final Variant variant) { this(entity, variant, null); } private Entity(final T entity, final MediaType mediaType, final Annotation[] annotations) { this(entity, new Variant(mediaType, (Locale) null, null), annotations); } private Entity(final T entity, final Variant variant, final Annotation[] annotations) { this.entity = entity; this.variant = variant; this.annotations = (annotations == null) ? EMPTY_ANNOTATIONS : annotations; } /** * Get entity {@link Variant variant} information. * * @return entity variant information. */ public Variant getVariant() { return variant; } /** * Get entity media type. * * @return entity media type. */ public MediaType getMediaType() { return variant.getMediaType(); } /** * Get entity encoding. * * @return entity encoding. */ public String getEncoding() { return variant.getEncoding(); } /** * Get entity language. * * @return entity language. */ public Locale getLanguage() { return variant.getLanguage(); } /** * Get entity data. * * @return entity data. */ public T getEntity() { return entity; } /** * Get the entity annotations. * * @return entity annotations if set, an empty annotation array if no entity annotations have been specified. */ public Annotation[] getAnnotations() { return annotations; } @Override public boolean equals(final Object o) { if (this == o) return true; if (!(o instanceof Entity)) return false; Entity entity1 = (Entity) o; if (!Arrays.equals(annotations, entity1.annotations)) return false; if (entity != null ? !entity.equals(entity1.entity) : entity1.entity != null) return false; if (variant != null ? !variant.equals(entity1.variant) : entity1.variant != null) return false; return true; } @Override public int hashCode() { int result = entity != null ? entity.hashCode() : 0; result = 31 * result + (variant != null ? variant.hashCode() : 0); result = 31 * result + Arrays.hashCode(annotations); return result; } @Override public String toString() { return "Entity{" + "entity=" + entity + ", variant=" + variant + ", annotations=" + Arrays.toString(annotations) + '}'; } }
変更されたテキスト
ファイルを開く
/* * Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at * http://www.eclipse.org/legal/epl-2.0. * * This Source Code may also be made available under the following Secondary * Licenses when the conditions for such availability set forth in the * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, * version 2 with the GNU Classpath Exception, which is available at * https://www.gnu.org/software/classpath/license.html. * * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 */ package javax.ws.rs.client; import java.lang.annotation.Annotation; import java.util.Arrays; import java.util.Locale; import javax.ws.rs.core.Form; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.core.Variant; /** * Encapsulates message entity including the associated variant information. * * @param <T> entity type. * @author Marek Potociar */ public final class Entity<T> { private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0]; private final T entity; private final Variant variant; private final Annotation[] annotations; /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final MediaType mediaType) { return new Entity<T>(entity, mediaType); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @param annotations entity annotations. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final MediaType mediaType, final Annotation[] annotations) { return new Entity<T>(entity, mediaType, annotations); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param mediaType entity content type. * @return entity instance. * @throws IllegalArgumentException if the supplied string cannot be parsed * or is {@code null}. */ public static <T> Entity<T> entity(final T entity, final String mediaType) { return new Entity<T>(entity, MediaType.valueOf(mediaType)); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param variant entity {@link Variant variant} information. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final Variant variant) { return new Entity<T>(entity, variant); } /** * Create an entity using a supplied content media type. * * @param <T> entity Java type. * @param entity entity data. * @param variant entity {@link Variant variant} information. * @param annotations entity annotations. * @return entity instance. */ public static <T> Entity<T> entity(final T entity, final Variant variant, final Annotation[] annotations) { return new Entity<T>(entity, variant, annotations); } /** * Create a {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#TEXT_PLAIN} entity instance. */ public static <T> Entity<T> text(final T entity) { return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_XML} entity instance. */ public static <T> Entity<T> xml(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_JSON} entity instance. */ public static <T> Entity<T> json(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE); } /** * Create a {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#TEXT_HTML} entity instance. */ public static <T> Entity<T> html(final T entity) { return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity. * * @param <T> entity Java type. * @param entity entity data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_XHTML_XML} entity * instance. */ public static <T> Entity<T> xhtml(final T entity) { return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} * form entity. * * @param form form data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} * form entity instance. */ public static Entity<Form> form(final Form form) { return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE); } /** * Create an {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} * form entity. * * @param formData multivalued map representing the form data. * @return {@value javax.ws.rs.core.MediaType#APPLICATION_FORM_URLENCODED} * form entity instance. */ public static Entity<Form> form(final MultivaluedMap<String, String> formData) { return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE); } private Entity(final T entity, final MediaType mediaType) { this(entity, new Variant(mediaType, (Locale) null, null), null); } private Entity(final T entity, final Variant variant) { this(entity, variant, null); } private Entity(final T entity, final MediaType mediaType, final Annotation[] annotations) { this(entity, new Variant(mediaType, (Locale) null, null), annotations); } private Entity(final T entity, final Variant variant, final Annotation[] annotations) { this.entity = entity; this.variant = variant; this.annotations = (annotations == null) ? EMPTY_ANNOTATIONS : annotations; } /** * Get entity {@link Variant variant} information. * * @return entity variant information. */ public Variant getVariant() { return variant; } /** * Get entity media type. * * @return entity media type. */ public MediaType getMediaType() { return variant.getMediaType(); } /** * Get entity encoding. * * @return entity encoding. */ public String getEncoding() { return variant.getEncoding(); } /** * Get entity language. * * @return entity language. */ public Locale getLanguage() { return variant.getLanguage(); } /** * Get entity data. * * @return entity data. */ public T getEntity() { return entity; } /** * Get the entity annotations. * * @return entity annotations if set, an empty annotation array if no * entity annotations have been specified. */ public Annotation[] getAnnotations() { return annotations; } @Override public boolean equals(final Object o) { if (this == o) { return true; } if (!(o instanceof Entity)) { return false; } Entity entity1 = (Entity) o; if (!Arrays.equals(annotations, entity1.annotations)) { return false; } if (entity != null ? !entity.equals(entity1.entity) : entity1.entity != null) { return false; } if (variant != null ? !variant.equals(entity1.variant) : entity1.variant != null) { return false; } return true; } @Override public int hashCode() { int result = entity != null ? entity.hashCode() : 0; result = 31 * result + (variant != null ? variant.hashCode() : 0); result = 31 * result + Arrays.hashCode(annotations); return result; } @Override public String toString() { return "Entity{" + "entity=" + entity + ", variant=" + variant + ", annotations=" + Arrays.toString(annotations) + '}'; } }
違いを見つける