Class BuildingRequestResolver
java.lang.Object
com.minecolonies.core.colony.requestsystem.resolvers.core.AbstractRequestResolver<R>
com.minecolonies.core.colony.requestsystem.resolvers.core.AbstractBuildingDependentRequestResolver<IDeliverable>
com.minecolonies.core.colony.requestsystem.resolvers.BuildingRequestResolver
- All Implemented Interfaces:
IRequester,IRequestResolver<IDeliverable>,IBuildingBasedRequester
- Direct Known Subclasses:
StationRequestResolver
Resolver that checks if a deliverable request is already in the building it is being requested from.
-
Constructor Summary
ConstructorsConstructorDescriptionBuildingRequestResolver(@NotNull ILocation location, @NotNull IToken<?> token) -
Method Summary
Modifier and TypeMethodDescriptionattemptResolveForBuilding(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> request, @NotNull AbstractBuilding building) booleancanResolveForBuilding(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> request, @NotNull AbstractBuilding building) getBuilding(@NotNull IRequestManager manager, @NotNull IToken<?> token) Get the building.getFollowupRequestForCompletion(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> completedRequest) intThe priority of this resolver.com.google.common.reflect.TypeToken<? extends IDeliverable>Used to determine which type of requests can be resolved by this Resolver.voidonAssignedRequestBeingCancelled(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> request) Indicates that an assigned request has been cancelled.voidonAssignedRequestCancelled(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> request) Indicates that an assigned request has been cancelled.voidonRequestedRequestCancelled(@NotNull IRequestManager manager, @NotNull IRequest<?> request) Method called by the request system to notify this requester that a request has been overruled.voidonRequestedRequestComplete(@NotNull IRequestManager manager, @NotNull IRequest<?> request) Method called by the request system to notify this requester that a request is complete.voidresolveForBuilding(@NotNull IRequestManager manager, @NotNull IRequest<? extends IDeliverable> request, @NotNull AbstractBuilding building) Methods inherited from class com.minecolonies.core.colony.requestsystem.resolvers.core.AbstractBuildingDependentRequestResolver
attemptResolveRequest, canResolveRequest, isValid, resolveRequestMethods inherited from class com.minecolonies.core.colony.requestsystem.resolvers.core.AbstractRequestResolver
getId, getLocation, getRequesterDisplayName, getSuitabilityMetricMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.minecolonies.api.colony.requestsystem.requester.IRequester
getId, getLocation, getRequesterDisplayNameMethods inherited from interface com.minecolonies.api.colony.requestsystem.resolver.IRequestResolver
onColonyUpdate, onRequestAssigned
-
Constructor Details
-
BuildingRequestResolver
-
-
Method Details
-
getPriority
public int getPriority()Description copied from interface:IRequestResolverThe priority of this resolver. The higher the priority the earlier this resolver is called.- Specified by:
getPriorityin interfaceIRequestResolver<IDeliverable>- Overrides:
getPriorityin classAbstractRequestResolver<IDeliverable>- Returns:
- The priority of this resolver.
-
getRequestType
Description copied from interface:IRequestResolverUsed to determine which type of requests can be resolved by this Resolver.- Returns:
- The class that represents this Type of Request this resolver can resolve.
-
onAssignedRequestBeingCancelled
public void onAssignedRequestBeingCancelled(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> request) Description copied from interface:IRequestResolverIndicates that an assigned request has been cancelled. Is called before graph is updated.- Parameters:
manager- The manager that indicates the cancellingrequest- The request that has been cancelled.
-
onAssignedRequestCancelled
public void onAssignedRequestCancelled(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> request) Description copied from interface:IRequestResolverIndicates that an assigned request has been cancelled. Is called after the graph has been updated.- Parameters:
manager- The manager that indicates the cancellingrequest- The request that has been cancelled.
-
canResolveForBuilding
public boolean canResolveForBuilding(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> request, @NotNull @NotNull AbstractBuilding building) - Specified by:
canResolveForBuildingin classAbstractBuildingDependentRequestResolver<IDeliverable>
-
attemptResolveForBuilding
@Nullable public @Nullable List<IToken<?>> attemptResolveForBuilding(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> request, @NotNull @NotNull AbstractBuilding building) - Specified by:
attemptResolveForBuildingin classAbstractBuildingDependentRequestResolver<IDeliverable>
-
resolveForBuilding
public void resolveForBuilding(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> request, @NotNull @NotNull AbstractBuilding building) - Specified by:
resolveForBuildingin classAbstractBuildingDependentRequestResolver<IDeliverable>
-
getFollowupRequestForCompletion
@Nullable public @Nullable List<IRequest<?>> getFollowupRequestForCompletion(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<? extends IDeliverable> completedRequest) -
onRequestedRequestComplete
public void onRequestedRequestComplete(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<?> request) Description copied from interface:IRequesterMethod called by the request system to notify this requester that a request is complete.- Parameters:
manager- the request manager.request- the request.
-
onRequestedRequestCancelled
public void onRequestedRequestCancelled(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IRequest<?> request) Description copied from interface:IRequesterMethod called by the request system to notify this requester that a request has been overruled.- Parameters:
manager- the request manager.request- the request.
-
getBuilding
public Optional<IRequester> getBuilding(@NotNull @NotNull IRequestManager manager, @NotNull @NotNull IToken<?> token) Description copied from interface:IBuildingBasedRequesterGet the building.- Parameters:
manager- the manager.token- the token.- Returns:
- the IRequester or empty.
-