Chain of Responsibility (CoR) er et adfærdsdesignmønster, der tillader et objekt at sende en anmodning langs en kæde af objekter, indtil et af objekterne kan håndtere anmodningen. Det bruges almindeligvis i systemer, hvor der er mange potentielle anmodningsbehandlere, og typen af anmodning eller dens parametre bør afgøre, hvilket objekt der kan håndtere det.
I dette mønster indeholder hvert objekt i kæden en reference til det næste objekt, der danner en sammenkædet liste over potentielle behandlere. Når en anmodning fremsættes, sendes den ned i kæden, indtil der er fundet en handler, der kan behandle den. Når anmodningen er blevet behandlet, sendes svaret tilbage op i kæden til den oprindelige anmoder. Hvis ingen af objekterne kan håndtere anmodningen, kan den droppes, eller der kan returneres en fejl.
Fordelene ved at bruge RU-mønsteret omfatter fleksibilitet i at tilføje, fjerne eller ændre handlere uden at påvirke resten af systemet, forbedret afkobling mellem rekvirenten og handleren og lettere vedligeholdelse og test.
Udgivelsesdato: