Coordinator common

Allows to paint in a view and save the results in a Bitmap object

Лицензия

Лицензия

Группа

Группа

me.panavtec
Идентификатор

Идентификатор

coordinator-commmon
Последняя версия

Последняя версия

1.1.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

Coordinator common
Allows to paint in a view and save the results in a Bitmap object
Ссылка на сайт

Ссылка на сайт

https://github.com/PaNaVTEC/Coordinator-java
Система контроля версий

Система контроля версий

https://github.com/PaNaVTEC/Coordinator-java

Скачать coordinator-commmon

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/me.panavtec/coordinator-commmon/ -->
<dependency>
    <groupId>me.panavtec</groupId>
    <artifactId>coordinator-commmon</artifactId>
    <version>1.1.0</version>
</dependency>
// https://jarcasting.com/artifacts/me.panavtec/coordinator-commmon/
implementation 'me.panavtec:coordinator-commmon:1.1.0'
// https://jarcasting.com/artifacts/me.panavtec/coordinator-commmon/
implementation ("me.panavtec:coordinator-commmon:1.1.0")
'me.panavtec:coordinator-commmon:jar:1.1.0'
<dependency org="me.panavtec" name="coordinator-commmon" rev="1.1.0">
  <artifact name="coordinator-commmon" type="jar" />
</dependency>
@Grapes(
@Grab(group='me.panavtec', module='coordinator-commmon', version='1.1.0')
)
libraryDependencies += "me.panavtec" % "coordinator-commmon" % "1.1.0"
[me.panavtec/coordinator-commmon "1.1.0"]

Зависимости

Библиотека не имеет зависимостей. Это самодостаточное приложение, которое не зависит ни от каких других библиотек.

Модули Проекта

Данный проект не имеет модулей.

#Coordinator Android Arsenal Maven Central

Coordinator is a Java library that is used to coordinate various asynchronous actions. Usually we found cases that you need to check if other thread is completed to execute an action, coordinator solves this problem without using flags.

Logo

##Importing to your project Add this dependency to your build.gradle file:

dependencies {
    compile 'me.panavtec:coordinator:{Lib version, see the mvn central badge}'
    provided 'me.panavtec:coordinator-compiler:{Lib version, see the mvn central badge}'
}

##Basic usage

Coordinator can be used with dependency injection and without. Basically it needs a CompletedAction and a set of actions to work. The completedAction is a Runnable that runs autommatically when all cations are complete. The list of actions are just integers and are used as ids to let know coordinator what actions are completed.

With Annotations:

@Actions({ AN_ACTION, ANOTHER_ACTION }) Coordinator coordinator;
@CoordinatorComplete Runnable coordinatorComplete;

public Constructor() {
	Coordinator.inject(this);
}

public void someAsyncMethod() {
	coordinator.completeAction(AN_ACTION);
}

public void someAsyncMethod2() {
	coordinator.completeAction(ANOTHER_ACTION);
}

And coordinator autommatically runs the runnable when the 2 actions are complete. We can annotate methods instead of having Runnable members in your class:

@CoordinatorComplete public void someAsyncMethod() {
}

Do you need some special action when and actions is triggered? Here is how to do it:

@CoordinatedAction(action = AN_ACTION) Runnable completeAction;

With this, the "completeAction" runnable is called when you call "coordinator.completeAction". Also you can annotate a method instead a class member.

Need more than 1 coordinator for a class? No problem! Just set a Id to coordinator and actions:

@Actions(coordinatorId = 2, value = { AN_ACTION, ANOTHER_ACTION }) Coordinator coordinator;
@CoordinatorComplete(coordinatorId = 2) Runnable coordinatorComplete;

Don't like annotations? Don't worry! You can instantiate Coordinator manually:

new Coordinator(new Runnable() {
	@Override public void run() {
		launchMyAwesomeAction();
	}
}, AN_ACTION, ANOTHER_ACTION);

Developed by

Christian Panadero Martinez - http://panavtec.me - @PaNaVTEC

License

Copyright 2015 Christian Panadero Martinez

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Версии библиотеки

Версия
1.1.0