All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.axonframework.commandhandling.distributed.UnresolvedRoutingKeyPolicy Maven / Gradle / Ivy

/*
 * Copyright (c) 2010-2014. Axon Framework
 *
 * 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.
 */

package org.axonframework.commandhandling.distributed;

/**
 * @author Allard Buijze
 * @since 2.0
 */
public enum UnresolvedRoutingKeyPolicy {

    /**
     * Policy that indicates that Routing Key resolution should fail with an Exception when no routing key can be found
     * for a Command Message.
     * 

* When the routing key is based on static content in the Command Message, the exception raised should extend from * {@link org.axonframework.common.AxonNonTransientException} to indicate that retries do not have a chance to * succeed. */ ERROR, /** * Policy that indicates a random key is to be returned when no Routing Key can be found for a Command Message. * Although not required to be fully random, implementations are required to return a different key for each * incoming command. Multiple invocations for the same command message may return the same value, but are not * required to do so. *

* This effectively means the Command Message is routed to a random segment. */ RANDOM_KEY, /** * Policy that indicates a fixed key ("unresolved") should be returned when no Routing Key can be found for a * Command Message. This effectively means all Command Messages with unresolved routing keys are routed to a the * same segment. The load of that segment may therefore not match the load factor. */ STATIC_KEY }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy