org.springframework.core
Interface Ordered

All Known Subinterfaces:
AspectInstanceFactory, AspectJPrecedenceInformation, MetadataAwareAspectInstanceFactory, PriorityOrdered
All Known Implementing Classes:
AbstractAdvisorAutoProxyCreator, AbstractAspectJAdvice, AbstractAutoProxyCreator, AbstractBeanFactoryPointcutAdvisor, AbstractControllerUrlHandlerMapping, AbstractDetectingUrlHandlerMapping, AbstractGenericPointcutAdvisor, AbstractHandlerMapping, AbstractHandlerMapping, AbstractMapBasedHandlerMapping, AbstractPointcutAdvisor, AbstractTemplateViewResolver, AbstractUrlHandlerMapping, AnnotationAwareAspectJAutoProxyCreator, AspectJAfterAdvice, AspectJAfterReturningAdvice, AspectJAfterThrowingAdvice, AspectJAroundAdvice, AspectJAwareAdvisorAutoProxyCreator, AspectJExpressionPointcutAdvisor, AspectJMethodBeforeAdvice, AspectJPointcutAdvisor, AspectJWeavingEnabler, AutowiredAnnotationBeanPostProcessor, BeanFactoryAspectInstanceFactory, BeanFactoryTransactionAttributeSourceAdvisor, BeanNameAutoProxyCreator, BeanNameUrlHandlerMapping, BeanNameViewResolver, CommonAnnotationBeanPostProcessor, ControllerBeanNameHandlerMapping, ControllerClassNameHandlerMapping, CustomAutowireConfigurer, CustomEditorConfigurer, CustomScopeConfigurer, DefaultAdvisorAutoProxyCreator, DefaultAnnotationHandlerMapping, DefaultAnnotationHandlerMapping, DefaultBeanFactoryPointcutAdvisor, DefaultIntroductionAdvisor, DefaultPointcutAdvisor, FreeMarkerViewResolver, InfrastructureAdvisorAutoProxyCreator, InitDestroyAnnotationBeanPostProcessor, InternalResourceViewResolver, JasperReportsViewResolver, LazySingletonAspectInstanceFactoryDecorator, NameMatchMethodPointcutAdvisor, ParameterHandlerMapping, PersistenceAnnotationBeanPostProcessor, PersistenceExceptionTranslationAdvisor, PersistenceExceptionTranslationPostProcessor, PortletModeHandlerMapping, PortletModeParameterHandlerMapping, PreferencesPlaceholderConfigurer, PropertyOverrideConfigurer, PropertyPlaceholderConfigurer, PropertyResourceConfigurer, PrototypeAspectInstanceFactory, ReflectiveAspectJAdvisorFactory.SyntheticInstantiationAdvisor, RegexpMethodPointcutAdvisor, RequiredAnnotationBeanPostProcessor, ResourceBundleViewResolver, ScriptFactoryPostProcessor, ServletContextPropertyPlaceholderConfigurer, SimpleAspectInstanceFactory, SimpleBeanFactoryAwareAspectInstanceFactory, SimpleMappingExceptionResolver, SimpleMappingExceptionResolver, SimpleMetadataAwareAspectInstanceFactory, SimpleUrlHandlerMapping, SingletonAspectInstanceFactory, SingletonMetadataAwareAspectInstanceFactory, SpringLobCreatorSynchronization, StaticMethodMatcherPointcutAdvisor, TransactionAttributeSourceAdvisor, TransactionSynchronizationAdapter, UrlBasedViewResolver, VelocityLayoutViewResolver, VelocityViewResolver, XmlViewResolver, XsltViewResolver

public interface Ordered

Interface that can be implemented by objects that should be orderable, for example in a Collection.

The actual order can be interpreted as prioritization, with the first object (with the lowest order value) having the highest priority.

Note that there is a 'priority' marker for this interface: PriorityOrdered. Order values expressed by PriorityOrdered objects always apply before order values of 'plain' Ordered values.

Since:
07.04.2003
Author:
Juergen Hoeller
See Also:
OrderComparator, Order

Field Summary
static int HIGHEST_PRECEDENCE
          Useful constant for the highest precedence value.
static int LOWEST_PRECEDENCE
          Useful constant for the lowest precedence value.
 
Method Summary
 int getOrder()
          Return the order value of this object, with a higher value meaning greater in terms of sorting.
 

Field Detail

HIGHEST_PRECEDENCE

static final int HIGHEST_PRECEDENCE
Useful constant for the highest precedence value.

See Also:
Integer.MIN_VALUE, Constant Field Values

LOWEST_PRECEDENCE

static final int LOWEST_PRECEDENCE
Useful constant for the lowest precedence value.

See Also:
Integer.MAX_VALUE, Constant Field Values
Method Detail

getOrder

int getOrder()
Return the order value of this object, with a higher value meaning greater in terms of sorting.

Normally starting with 0 or 1, with LOWEST_PRECEDENCE indicating greatest. Same order values will result in arbitrary positions for the affected objects.

Higher value can be interpreted as lower priority, consequently the first object has highest priority (somewhat analogous to Servlet "load-on-startup" values).

Note that order values below 0 are reserved for framework purposes. Application-specified values should always be 0 or greater, with only framework components (internal or third-party) supposed to use lower values.

Returns:
the order value
See Also:
LOWEST_PRECEDENCE