package com.l7tech.server.util;

import com.l7tech.message.Message;
import com.l7tech.message.SecurityKnob;
import com.l7tech.security.token.SecurityContextToken;
import com.l7tech.security.token.XmlSecurityToken;
import com.l7tech.security.xml.decorator.WssDecorator.DecorationResult;
import com.l7tech.security.xml.processor.ProcessorResult;
import com.l7tech.security.xml.processor.SecurityContext;
import com.l7tech.security.xml.processor.SecurityContextFinder;

class w implements SecurityContextFinder {
   final Message val$relatedRequest;

   w(Message var1) {
      this.val$relatedRequest = var1;
   }

   public SecurityContext getSecurityContext(String var1) {
      SecurityKnob var2 = this.val$relatedRequest.getSecurityKnob();

      for (DecorationResult var4 : var2.getAllDecorationResults()) {
         if (var1.equals(var4.getWsscSecurityContextId())) {
            return var4.getWsscSecurityContext();
         }
      }

      ProcessorResult var9 = var2.getProcessorResult();
      if (var9 != null) {
         for (XmlSecurityToken var7 : var9.getXmlSecurityTokens()) {
            if (var7 instanceof SecurityContextToken var8 && var1.equals(var8.getContextIdentifier())) {
               return var8.getSecurityContext();
            }
         }
      }

      return null;
   }
}
