1. A method comprising: determining at least one intent object preference for locking a plurality of intent objects; grouping the plurality of intent objects into a plurality of sets, based on values of the at least one intent object preference associated with each intent object from the plurality of intent objects, wherein each set from the plurality of sets contains intent objects with matching preference values for the at least one intent object preference; associating a matcher object with the each set; locking each set, wherein only the matcher object associated with the each set can operate on the each set; and determining, by the associated matcher of the each set, whether an intent object in the each set matches other intent objects in the each set.