Eclipse formatting - IntelliJ formatting

Created Diff never expires
4 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
288 lines
27 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
300 lines
/*
/*
* 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) +
'}';
'}';
}
}
}
}