ListTransaction class
Пакет: com.hypixel.hytale.server.core.inventory.transaction
Файл: com/hypixel/hytale/server/core/inventory/transaction/ListTransaction.java
implements: Transaction
Поля (5)
| Модификаторы | Тип | Имя |
|---|---|---|
|
|
break |
|
List |
var4 |
|
List |
var4 |
|
boolean |
var5 |
|
|
var5 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(Transaction var3 : this.list) |
|
|
for for(Transaction var7 : var4) |
static |
<T extends Transaction> ListTransaction<T> |
getEmptyTransaction<T extends Transaction> ListTransaction<T> getEmptyTransaction(boolean var0) |
|
|
if if(!this.succeeded) |
public |
int |
sizeint size() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.inventory.transaction;
class="kw">import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
class="kw">import java.util.Collections;
class="kw">import java.util.List;
class="kw">import java.util.Objects;
class="kw">import java.util.stream.Collectors;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ListTransaction<T class="kw">extends Transaction> class="kw">implements Transaction {
class="kw">public class="kw">static class="kw">final ListTransaction<?> EMPTY_SUCCESSFUL_TRANSACTION = new ListTransaction(true);
class="kw">public class="kw">static class="kw">final ListTransaction<?> EMPTY_FAILED_TRANSACTION = new ListTransaction(false);
class="kw">private class="kw">final boolean succeeded;
@Nonnull
class="kw">private class="kw">final List<T> list;
class="kw">public class="kw">static <T class="kw">extends Transaction> ListTransaction<T> getEmptyTransaction(boolean var0) {
class="kw">return (ListTransaction<T>)(var0 ? EMPTY_SUCCESSFUL_TRANSACTION : EMPTY_FAILED_TRANSACTION);
}
class="kw">private ListTransaction(boolean var1) {
this.succeeded = var1;
this.list = Collections.emptyList();
}
class="kw">public ListTransaction(boolean var1, @Nonnull List<T> var2) {
this.succeeded = var1;
this.list = Collections.unmodifiableList(var2);
}
@Override
class="kw">public boolean succeeded() {
class="kw">return this.succeeded;
}
@Override
class="kw">public boolean wasSlotModified(short var1) {
if (!this.succeeded) {
class="kw">return false;
}
for (Transaction var3 : this.list) {
if (var3.succeeded() && var3.wasSlotModified(var1)) {
class="kw">return true;
}
}
class="kw">return false;
}
@Nonnull
class="kw">public List<T> getList() {
class="kw">return this.list;
}
class="kw">public int size() {
class="kw">return this.list.size();
}
@Nonnull
class="kw">public ListTransaction<T> toParent(ItemContainer var1, short var2, ItemContainer var3) {
List var4 = this.list.stream().map(var3x -> var3x.toParent(var1, var2, var3)).collect(Collectors.toList());
class="kw">return new ListTransaction<>(this.succeeded, var4);
}
@Nullable
class="kw">public ListTransaction<T> fromParent(ItemContainer var1, short var2, ItemContainer var3) {
List var4 = this.list.stream().map(var3x -> var3x.fromParent(var1, var2, var3)).filter(Objects::nonNull).collect(Collectors.toList());
if (var4.isEmpty()) {
class="kw">return null;
}
boolean var5 = false;
for (Transaction var7 : var4) {
if (var7.succeeded()) {
var5 = true;
break;
}
}
class="kw">return new ListTransaction<>(var5, var4);
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "ListTransaction{succeeded=" + this.succeeded + ", list=" + this.list + "}";
}
}