Skip to content
/ Sync Public

Small Android library to handle Async Task methods.

License

Notifications You must be signed in to change notification settings

leomindez/Sync

Repository files navigation

Sync

Small Android library to handle Async Task methods. Use Interface Segregation Principle to divide the actions into indivual callbacks.

Configuration

	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
        
        dependencies {
	        compile 'com.github.leomindez:Sync:1.0.0'
	}

Usage

Create a class and extends from Sync class. Sync is generic class, set <Params, Result> types and then implement doInBackground method.

private class SyncExample extends Sync<String, String> {
        @Override
        protected String doInBackground(String... params) {
            return "Example from" + params[0];
    }
 }

Create an instance

SyncExample sync = new SyncExample();

then call execute method

sync.executer("Sync");

Use interface callbacks to handle Sync behavior.

Response Callback

sync.response(new SyncResponseCallback<String>(){
  @Override
public void onSuccess(String s) {
Toast.makeText(MainActivity.this, s, Toast.LENGTH_LONG).show();
}
@Override
public void onError(Error error) {
Toast.makeText(MainActivity.this, error.getMessage(), Toast.LENGTH_LONG).show();
}
});

PreExecute Callback

sync.preExecute(new SyncPreExecuteCallback() {
@Override
public void onPreExecute() {       
}
});    
                

Progress Callback

sync.progress(new SyncProgressCallback() {
@Override
public void onProgress(Integer... progress) {
}
});

Cancel Callback

sync.cancel(new SyncCancelCallback<String>() {
@Override
public void onCancel(String s) {
}
});

About

Small Android library to handle Async Task methods.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages