Skip to content

kalenchukov/LemnaChanging

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Справка

LemnaChanging

Изменение значений полей класса.

Использование

Создание изменяющего класса

Для создания изменяющего класса, необходимо создать класс реализующий интерфейс "Modificatory".

import dev.kalenchukov.lemna.changing.annotations.Changing;

public final class CommentModifier implements Modificatory<String>
{
	@Nullable
	@Override
	public String modify(@Nullable String value)
	{
		if (value == null)
		{
			return null;
		}

		return value.toUpperCase();
	}
}

Изменение значений полей класса

Чтобы задать изменяющего для поля, необходимо добавить аннотацию "@Changer". Данная аннотация содержит параметр для указания изменяющего класса.

Класс, в котором необходимо изменить значение поля:

import dev.kalenchukov.lemna.changing.annotations.Changer;

public class Experimental
{
	@Changer(modifier = CommentModifier.class)
	private String comment = "Мой комментарий";

	public String getComment()
	{
		return this.comment;
	}
}

Вызов изменяющего:

import dev.kalenchukov.lemna.changing.Changing;
import dev.kalenchukov.lemna.changing.Changeable;

Experimental experimental = new Experimental();

Changeable changing = new Changing(experimental);
changing.change();

experimental.getComment();

Результат выполнения:

МОЙ КОММЕНТАРИЙ

About

Изменение значений полей класса (Changing class field values)

Topics

Resources

License

Stars

Watchers

Forks

Languages