public class org.apache.http.impl.cookie.RFC2965PortAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CommonCookieAttributeHandler
{
public void <init>()
{
org.apache.http.impl.cookie.RFC2965PortAttributeHandler v;
v := @this: org.apache.http.impl.cookie.RFC2965PortAttributeHandler;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
private static int[] parsePortAttribute(java.lang.String) throws org.apache.http.cookie.MalformedCookieException
{
java.lang.NumberFormatException v;
org.apache.http.cookie.MalformedCookieException v, v;
int[] v;
java.util.StringTokenizer v;
int v, v, v, v;
java.lang.String v, v, v, v, v;
boolean v;
v := @parameter: java.lang.String;
v = new java.util.StringTokenizer;
specialinvoke v.<java.util.StringTokenizer: void <init>(java.lang.String,java.lang.String)>(v, ",");
v = virtualinvoke v.<java.util.StringTokenizer: int countTokens()>();
v = newarray (int)[v];
label:
v = 0;
label:
v = virtualinvoke v.<java.util.StringTokenizer: boolean hasMoreTokens()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.StringTokenizer: java.lang.String nextToken()>();
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
v[v] = v;
v = v[v];
if v >= 0 goto label;
v = new org.apache.http.cookie.MalformedCookieException;
specialinvoke v.<org.apache.http.cookie.MalformedCookieException: void <init>(java.lang.String)>("Invalid Port attribute.");
throw v;
label:
v = v + 1;
goto label;
label:
v := @caughtexception;
v = new org.apache.http.cookie.MalformedCookieException;
v = virtualinvoke v.<java.lang.NumberFormatException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid Port attribute: \u0001");
specialinvoke v.<org.apache.http.cookie.MalformedCookieException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
catch java.lang.NumberFormatException from label to label with label;
}
private static boolean portMatch(int, int[])
{
int[] v;
int v, v, v, v;
boolean v;
v := @parameter: int;
v := @parameter: int[];
v = 0;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != v goto label;
v = 1;
goto label;
label:
v = v + 1;
goto label;
label:
return v;
}
public void parse(org.apache.http.cookie.SetCookie, java.lang.String) throws org.apache.http.cookie.MalformedCookieException
{
org.apache.http.cookie.SetCookie v;
int[] v;
org.apache.http.impl.cookie.RFC2965PortAttributeHandler v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.http.impl.cookie.RFC2965PortAttributeHandler;
v := @parameter: org.apache.http.cookie.SetCookie;
v := @parameter: java.lang.String;
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Cookie");
v = v instanceof org.apache.http.cookie.SetCookie;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.http.impl.cookie.RFC2965PortAttributeHandler: int[] parsePortAttribute(java.lang.String)>(v);
interfaceinvoke v.<org.apache.http.cookie.SetCookie2: void setPorts(int[])>(v);
label:
return;
}
public void validate(org.apache.http.cookie.Cookie, org.apache.http.cookie.CookieOrigin) throws org.apache.http.cookie.MalformedCookieException
{
org.apache.http.cookie.CookieOrigin v;
org.apache.http.cookie.CookieRestrictionViolationException v;
int[] v;
org.apache.http.impl.cookie.RFC2965PortAttributeHandler v;
int v;
org.apache.http.cookie.Cookie v;
boolean v, v, v;
v := @this: org.apache.http.impl.cookie.RFC2965PortAttributeHandler;
v := @parameter: org.apache.http.cookie.Cookie;
v := @parameter: org.apache.http.cookie.CookieOrigin;
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Cookie");
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Cookie origin");
v = virtualinvoke v.<org.apache.http.cookie.CookieOrigin: int getPort()>();
v = v instanceof org.apache.http.cookie.ClientCookie;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.http.cookie.ClientCookie: boolean containsAttribute(java.lang.String)>("port");
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.http.cookie.Cookie: int[] getPorts()>();
v = staticinvoke <org.apache.http.impl.cookie.RFC2965PortAttributeHandler: boolean portMatch(int,int[])>(v, v);
if v != 0 goto label;
v = new org.apache.http.cookie.CookieRestrictionViolationException;
specialinvoke v.<org.apache.http.cookie.CookieRestrictionViolationException: void <init>(java.lang.String)>("Port attribute violates RFC 2965: Request port not found in cookie\'s port list.");
throw v;
label:
return;
}
public boolean match(org.apache.http.cookie.Cookie, org.apache.http.cookie.CookieOrigin)
{
org.apache.http.cookie.CookieOrigin v;
int[] v, v;
org.apache.http.impl.cookie.RFC2965PortAttributeHandler v;
int v;
org.apache.http.cookie.Cookie v;
boolean v, v, v;
v := @this: org.apache.http.impl.cookie.RFC2965PortAttributeHandler;
v := @parameter: org.apache.http.cookie.Cookie;
v := @parameter: org.apache.http.cookie.CookieOrigin;
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Cookie");
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Cookie origin");
v = virtualinvoke v.<org.apache.http.cookie.CookieOrigin: int getPort()>();
v = v instanceof org.apache.http.cookie.ClientCookie;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.http.cookie.ClientCookie: boolean containsAttribute(java.lang.String)>("port");
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.http.cookie.Cookie: int[] getPorts()>();
if v != null goto label;
return 0;
label:
v = interfaceinvoke v.<org.apache.http.cookie.Cookie: int[] getPorts()>();
v = staticinvoke <org.apache.http.impl.cookie.RFC2965PortAttributeHandler: boolean portMatch(int,int[])>(v, v);
if v != 0 goto label;
return 0;
label:
return 1;
}
public java.lang.String getAttributeName()
{
org.apache.http.impl.cookie.RFC2965PortAttributeHandler v;
v := @this: org.apache.http.impl.cookie.RFC2965PortAttributeHandler;
return "port";
}
}