SystemGroupDependency class
Пакет: com.hypixel.hytale.component.dependency
Файл: com/hypixel/hytale/component/dependency/SystemGroupDependency.java
extends: Dependency<ECS_TYPE>
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
|
break |
Методы (4)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("System dependency isn't registered: " + this.group) |
abstract |
|
super super(var1, var3) |
|
|
switch switch(this.order) |
abstract |
|
this this(var1, var2, OrderPriority.NORMAL) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.component.dependency;
class="kw">import com.hypixel.hytale.component.ComponentRegistry;
class="kw">import com.hypixel.hytale.component.SystemGroup;
class="kw">import com.hypixel.hytale.component.system.ISystem;
class="kw">import javax.annotation.Nonnull;
class="kw">public class SystemGroupDependency<ECS_TYPE> class="kw">extends Dependency<ECS_TYPE> {
@Nonnull
class="kw">private class="kw">final SystemGroup<ECS_TYPE> group;
class="kw">public SystemGroupDependency(@Nonnull Order var1, @Nonnull SystemGroup<ECS_TYPE> var2) {
this(var1, var2, OrderPriority.NORMAL);
}
class="kw">public SystemGroupDependency(@Nonnull Order var1, @Nonnull SystemGroup<ECS_TYPE> var2, int var3) {
super(var1, var3);
this.group = var2;
}
class="kw">public SystemGroupDependency(@Nonnull Order var1, @Nonnull SystemGroup<ECS_TYPE> var2, @Nonnull OrderPriority var3) {
super(var1, var3);
this.group = var2;
}
@Nonnull
class="kw">public SystemGroup<ECS_TYPE> getGroup() {
class="kw">return this.group;
}
@Override
class="kw">public void validate(@Nonnull ComponentRegistry<ECS_TYPE> var1) {
if (!var1.hasSystemGroup(this.group)) {
throw new IllegalArgumentException("System dependency isn't registered: " + this.group);
}
}
@Override
class="kw">public void resolveGraphEdge(@Nonnull ComponentRegistry<ECS_TYPE> var1, @Nonnull ISystem<ECS_TYPE> var2, @Nonnull DependencyGraph<ECS_TYPE> var3) {
class="kw">switch (this.order) {
case BEFORE:
for (ISystem var11 : var3.getSystems()) {
if (this.group.equals(var11.getGroup())) {
var3.addEdge(var2, var11, -this.priority);
}
}
break;
case AFTER:
for (ISystem var7 : var3.getSystems()) {
if (this.group.equals(var7.getGroup())) {
var3.addEdge(var7, var2, this.priority);
}
}
}
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "SystemGroupDependency{group=" + this.group + "} " + super.toString();
}
}