@Test public void testIsInstanceOf() { Validate.isInstanceOf(String.class, "hi"); Validate.isInstanceOf(Integer.class, 1); }
@Test public void testIsInstanceOf_withMessage() { Validate.isInstanceOf(String.class, "hi", "Error"); Validate.isInstanceOf(Integer.class, 1, "Error"); try { Validate.isInstanceOf(List.class, "hi", "Error"); fail("Expecting IllegalArgumentException"); } catch (final IllegalArgumentException e) { assertEquals("Error", e.getMessage()); } }
@Test public void testIsInstanceOf_withMessageArgs() { Validate.isInstanceOf(String.class, "hi", "Error %s=%s", "Name", "Value"); Validate.isInstanceOf(Integer.class, 1, "Error %s=%s", "Name", "Value"); try { Validate.isInstanceOf(List.class, "hi", "Error %s=%s", "Name", "Value"); fail("Expecting IllegalArgumentException"); } catch (final IllegalArgumentException e) { assertEquals("Error Name=Value", e.getMessage()); } try { Validate.isInstanceOf(List.class, "hi", "Error %s=%s", List.class, "Value"); fail("Expecting IllegalArgumentException"); } catch (final IllegalArgumentException e) { assertEquals("Error interface java.util.List=Value", e.getMessage()); } try { Validate.isInstanceOf(List.class, "hi", "Error %s=%s", List.class, null); fail("Expecting IllegalArgumentException"); } catch (final IllegalArgumentException e) { assertEquals("Error interface java.util.List=null", e.getMessage()); } }
@Test public void testIsInstanceOfExceptionMessage() { try { Validate.isInstanceOf(List.class, "hi"); fail("Expecting IllegalArgumentException"); } catch (final IllegalArgumentException e) { assertEquals("Expected type: java.util.List, actual: java.lang.String", e.getMessage()); } }
final NameExpr candidateNameExpr = candidate.getName(); if (!candidate.toString().contains("*")) { Validate.isInstanceOf(QualifiedNameExpr.class, candidateNameExpr, "Expected import '%s' to use a fully-qualified type name", candidate);
@Override public void createEmbeddedField(JavaType typeName, JavaType fieldType, JavaSymbolName fieldName, boolean permitReservedWords, List<AnnotationMetadataBuilder> extraAnnotations) { // Check if the requested entity is a JPA @Entity final ClassOrInterfaceTypeDetails javaTypeDetails = typeLocationService.getTypeDetails(typeName); Validate.notNull(javaTypeDetails, "The type specified, '%s', doesn't exist", typeName); final String physicalTypeIdentifier = javaTypeDetails.getDeclaredByMetadataId(); final PhysicalTypeMetadata targetTypeMetadata = (PhysicalTypeMetadata) metadataService.get(physicalTypeIdentifier); Validate .notNull(targetTypeMetadata, "The specified target '--class' does not exist or can not be found. Please create this type first."); final PhysicalTypeDetails targetPtd = targetTypeMetadata.getMemberHoldingTypeDetails(); Validate.isInstanceOf(MemberHoldingTypeDetails.class, targetPtd); final ClassOrInterfaceTypeDetails targetTypeCid = (ClassOrInterfaceTypeDetails) targetPtd; final MemberDetails memberDetails = memberDetailsScanner.getMemberDetails(this.getClass().getName(), targetTypeCid); Validate .isTrue( memberDetails.getAnnotation(ENTITY) != null || memberDetails.getAnnotation(PERSISTENT) != null, "The field embedded command is only applicable to JPA @Entity or Spring Data @Persistent target types."); final EmbeddedField fieldDetails = new EmbeddedField(physicalTypeIdentifier, fieldType, fieldName); if (extraAnnotations != null && !extraAnnotations.isEmpty()) { fieldDetails.addAnnotations(extraAnnotations); } insertField(fieldDetails, permitReservedWords, false); }
@Override public void createEmbeddedField(JavaType typeName, JavaType fieldType, JavaSymbolName fieldName, boolean permitReservedWords, List<AnnotationMetadataBuilder> extraAnnotations) { // Check if the requested entity is a JPA @Entity final ClassOrInterfaceTypeDetails javaTypeDetails = typeLocationService.getTypeDetails(typeName); Validate.notNull(javaTypeDetails, "The type specified, '%s', doesn't exist", typeName); final String physicalTypeIdentifier = javaTypeDetails.getDeclaredByMetadataId(); final PhysicalTypeMetadata targetTypeMetadata = (PhysicalTypeMetadata) metadataService.get(physicalTypeIdentifier); Validate .notNull(targetTypeMetadata, "The specified target '--class' does not exist or can not be found. Please create this type first."); final PhysicalTypeDetails targetPtd = targetTypeMetadata.getMemberHoldingTypeDetails(); Validate.isInstanceOf(MemberHoldingTypeDetails.class, targetPtd); final ClassOrInterfaceTypeDetails targetTypeCid = (ClassOrInterfaceTypeDetails) targetPtd; final MemberDetails memberDetails = memberDetailsScanner.getMemberDetails(this.getClass().getName(), targetTypeCid); Validate .isTrue( memberDetails.getAnnotation(ENTITY) != null || memberDetails.getAnnotation(PERSISTENT) != null, "The field embedded command is only applicable to JPA @Entity or Spring Data @Persistent target types."); final EmbeddedField fieldDetails = new EmbeddedField(physicalTypeIdentifier, fieldType, fieldName); if (extraAnnotations != null && !extraAnnotations.isEmpty()) { fieldDetails.addAnnotations(extraAnnotations); } insertField(fieldDetails, permitReservedWords, false); }
continue; Validate.isInstanceOf(ItdTypeDetailsProvidingMetadataItem.class, metadataItem, "ITD metadata provider '%s' failed to return the correct metadata type", mp); final ItdTypeDetailsProvidingMetadataItem itdTypeDetailsMd =
.isInstanceOf( NormalAnnotationExpr.class, annotationExpression,
void checkValueIsColor(ColorButtonField field, Object value) { isInstanceOf(Color.class, value, VALUE_MUST_TYPE, value, Color.class, field); } }
@SuppressWarnings("unchecked") public static <T> T readAttribute(Annotation annotation, String name, Class<T> requiredType) throws IllegalArgumentException, IllegalStateException { Object result = AnnotationUtils.invokeNonArgMethod(annotation, name); Validate.isInstanceOf(requiredType, result, "Method %s should return instance of %s", name, requiredType.getSimpleName()); return (T) result; }
@SuppressWarnings("unchecked") public static <T> T readAttribute(Annotation annotation, String name, Class<T> requiredType) throws IllegalArgumentException, IllegalStateException { Object result = AnnotationUtils.invokeNonArgMethod(annotation, name); Validate.isInstanceOf(requiredType, result, "Method %s should return instance of %s", name, requiredType.getSimpleName()); return (T) result; }
@Override public List<E> unmarshal(TypeConverter converter, ListType<E> type, Object value) { Validate.isInstanceOf(Collection.class, value, "Expected list but got %s", value.getClass()); return (List<E>) ((Collection) value).stream().map((Object jsonElem) -> converter.unmarshal(type.getElementType(), jsonElem)) .collect(Collectors.toList()); } }
.isInstanceOf( NormalAnnotationExpr.class, expressionValue,
@Override public Map<K, V> unmarshal(TypeConverter converter, MapType<K, V> type, Object value) { Validate.isInstanceOf(Map.class, value, "Expected map but got %s", value.getClass()); return (Map<K, V>) ((Map) value).entrySet().stream() .collect(Collectors.toMap((Map.Entry entry) -> converter.unmarshal(type.getKeyType(), entry.getKey()), (Map.Entry entry) -> converter.unmarshal(type.getValueType(), entry.getValue()))); } }
void checkPort(Object service, Object object) { notNull(object, port_null.toString(), service); isInstanceOf(Integer.class, object, port_number.toString(), service); }
void checkLevel(Object object) { notNull(object, level_null.toString()); isInstanceOf(Integer.class, object, level_number.toString()); }
void checkUid(Domain domain, Object uid) { notNull(uid, uid_null.toString(), domain); isInstanceOf(Number.class, uid, uid_number.toString(), domain); }
@Override public O unmarshal(TypeConverter converter, ObjectType type, Object value) { Validate.isInstanceOf(ObjectType.class, type, "Object type %s doesn't match %s", type.getClass(), ObjectType.class); String className = ((ObjectType) type).getClassName(); return (O) converter.getObjectMapper().convertValue(value, Validate.notNull(RestApiUtils.getClass(className), "Class %s not found", className)); } }
@SuppressWarnings("unchecked") @Override public AnnotatedValue<T> unmarshal(TypeConverter converter, AnnotatedType<T> type, Object value) { Validate.isInstanceOf(Map.class, value, "Expected map but got %s", value.getClass()); AnnotatedValue<T> annotatedValue = converter.getObjectMapper().convertValue(value, AnnotatedValue.class); annotatedValue.setValue(converter.unmarshal(type.getValueType(), annotatedValue.getValue())); return annotatedValue; } }