![JAR search and dependency download from the Maven repository](/logo.png)
fr.lteconsulting.angular2gwt.client.Ajax Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of angular2-gwt Show documentation
Show all versions of angular2-gwt Show documentation
Allows to develop Angular 2 applications with GWT
package fr.lteconsulting.angular2gwt.client;
import fr.lteconsulting.angular2gwt.client.interop.ng.AngularTools;
import fr.lteconsulting.angular2gwt.client.interop.promise.Executor;
import fr.lteconsulting.angular2gwt.client.interop.promise.Promise;
import fr.lteconsulting.angular2gwt.client.interop.promise.Rejector;
import fr.lteconsulting.angular2gwt.client.interop.promise.Resolver;
import fr.lteconsulting.angular2gwt.client.interop.xmlhttprequest.XMLHttpRequest;
public class Ajax
{
public static Promise sendRequest( String method, String url )
{
return sendRequest( method, url, null );
}
public static Promise sendRequest( String method, String url, Object data )
{
return new Promise<>( new Executor()
{
@Override
public void execute( Resolver resolver, Rejector rejecter )
{
XMLHttpRequest req = new XMLHttpRequest();
req.open( method, url, true );
if( data != null )
{
req.setRequestHeader( "Content-Type", "application/json" );
}
req.setOnreadystatechange( event -> {
if( req.getReadyState() == 4 )
{
if( req.getStatus() == 200 )
resolver.resolve( req.getResponseText() );
else
rejecter.reject( "error fetching service (status: " + req.getStatus() + ") data with url " + url );
}
} );
req.send( data != null ? JSON.stringify( data ) : null );
}
} );
}
public static Promise sendRequestAndConvertDto( String method, String url, Class convertedClass )
{
return sendRequestAndConvertDto( method, url, null, convertedClass );
}
public static Promise sendRequestAndConvertDto( String method, String url, Object data, Class convertedClass )
{
return new Promise<>( new Executor()
{
@Override
public void execute( Resolver resolver, Rejector rejecter )
{
Ajax.sendRequest( method, url, data ).then( value -> {
Object dto = JSON.parse( value );
T convertedDto = AngularTools.convertDto( dto, convertedClass );
resolver.resolve( convertedDto );
return null;
}, ( error ) -> {
rejecter.reject( "error getting heroes because of: " + error );
return null;
} );
}
} );
}
public static Promise> sendRequestAndConvertDtoList( String method, String url, Class convertedClass )
{
return sendRequestAndConvertDtoList( method, url, null, convertedClass );
}
public static Promise> sendRequestAndConvertDtoList( String method, String url, Object data, Class convertedClass )
{
return new Promise<>( ( resolver, rejecter ) -> {
Ajax.sendRequest( method, url, data ).then( value -> {
JsArray
© 2015 - 2025 Weber Informatics LLC | Privacy Policy