text:
/* global PaymentRequest:false */
/* global toDictionary:false */
/* global print:false */

/**
 * Launches the PaymentRequest UI that offers free shipping worldwide.
 */
function buy() {  // eslint-disable-line no-unused-vars
  try {
    var details = {
      total: {label: 'Total', amount: {currency: 'USD', value: '5.00'}},
      shippingOptions: [{
        id: 'freeShippingOption',
        label: 'Free global shipping',
        amount: {currency: 'USD', value: '0'},
        selected: true
      }]
    };
    var request = new PaymentRequest(
        [{supportedMethods: ['visa']}], details,
        {requestShipping: true});
    request.addEventListener('shippingaddresschange', function(e) {
      e.updateWith(new Promise(function(resolve) {
        // No changes in price based on shipping address change.
        resolve(details);
      }));
    });
    request.show()
        .then(function(resp) {
          resp.complete('success')
              .then(function() {
                print(
                    resp.shippingOption + '
' +
                    JSON.stringify(
                        toDictionary(resp.shippingAddress), undefined, 2) +
                    '
' + resp.methodName + '
' +
                    JSON.stringify(resp.details, undefined, 2));
              })
              .catch(function(error) {
                print(error);
              });
        })
        .catch(function(error) {
          print(error);
        });
  } catch (error) {
    print(error.message);
  }
}


text:
<?php

namespace sndsgd\field;

use \DateTime;
use \InvalidArgumentException;
use \sndsgd\field\rule\DateStringRule;

/**
 * A field for storing DateTime values
 */
class DateField extends \sndsgd\Field
{
    /**
     * {@inheritdoc}
     */
    public function __construct($name)
    {
        parent::__construct($name);
        $this->addRule(new DateStringRule);
    }

    /**
     * {@inheritdoc}
     * @param DateTime $value
     */
    public function setDefault($value)
    {
        if (($value instanceof DateTime) === false) {
            throw new InvalidArgumentException(
                "invalid value provided for 'value'; ".
                "expecting an instance of DateTime"
            );
        }
        $this->defaultValue = $value;
        return $this;
    }
}

redpajama_set_name: RedPajamaGithub


text:
using System;
using System.Collections.Specialized;
using System.ComponentModel.DataAnnotations;
using System.Web.DynamicData;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace LINQdIn {
    public partial class MultilineText_EditField : System.Web.DynamicData.FieldTemplateUserControl {

		protected void Page_Init(object sender, EventArgs e)
        {
            TextBox1.ToolTip = Column.Description;
			Label1.Text = Column.DisplayName;
        }

		// show bootstrap has-error
		protected void Page_PreRender(object sender, EventArgs e)
        {
            // if validation error then apply bootstrap has-error CSS class
            var isValid = this.Page.ModelState.IsValidField(Column.Name);
            Div1.Attributes["class"] = isValid ? "form-group" : "form-group has-error";

        }

        protected override void ExtractValues(IOrderedDictionary dictionary) {
            dictionary[Column.Name] = ConvertEditedValue(TextBox1.Text);
        }

        public override Control DataControl {
            get {
                return TextBox1;
            }
        }
    }
}


text:
class Topic < ActiveRecord::Base
  include TagMethods

  before_create :set_default_values
  before_destroy :check_for_posts
  before_save :normalize_input

  # Validations
  validates_uniqueness_of :name

  # Attributes Length Validations
  validates :name, length: {minimum: 4}
  validates :name, length: {maximum: 20}

  # Relationships
  has_many :posts
end


text:
"""Simple plot of number of WAWA"""
import datetime

import pandas as pd
from matplotlib.ticker import MaxNLocator
from pyiem.nws import vtec
from pyiem.plot import figure_axes
from pyiem.util import get_autoplot_context, get_sqlalchemy_conn, get_dbconn
from pyiem.exceptions import NoDataFound
from pyiem.reference import state_names
from sqlalchemy import text

PDICT = {"yes": "Limit Plot to Year-to-Date", "no": "Plot Entire Year"}
PDICT2 = {
    "wfo": "View by Single NWS Forecast Office",
    "state": "View by State",
    "ugc": "NWS County/Forecast Zone",
}

def get_description():
    """Return a dict describing how to call this plotter"""
    desc = {}
    desc["data"] = True
    desc["cache"] = 86400
    desc[
        "description"
    ] = """This chart displays the number of products issued
    by a NWS Office  or state by year for a given watch, warning,
    or advisory of your choice.  These numbers are based on IEM archives and
    are not official!  The counting is summing up distinct events.  If one
    tornado watch covered 40 counties, this would only count as 1 for this
    plot.

    <p>Since the year 2005 and 2008 are common start years for VTEC tracking of
    various phenomena, when this app encounters those years as the starting
    point of the plot, they are droppped from the display.
    """
    desc["arguments"] = [
        dict(
            type="select",
            name="opt",
            default="wfo",
            options=PDICT2,
            label="What to summarize data by:",
        ),
        dict(
            type="networkselect",
            name="station",
            network="WFO",
            default="DMX",
            label="Select WFO:",
            all=True,
        ),
        dict(type="state", default="IA", name="state", label="Select State:"),
        dict(
            type="ugc",
            name="ugc",
            default="IAC169",
            label="Select UGC Zone/County:",
        ),
        dict(
            type="select",
            name="limit",
            default="no",
            label="End Date Limit to Plot:",
            options=PDICT,
        ),
        dict(
            type="phenomena",
            name="phenomena",
            default="FF",
            label="Select Watch/Warning Phenomena Type:",
        ),
        dict(
            type="significance",
            name="significance",
            default="W",
            label="Select Watch/Warning Significance Level:",
        ),
    ]
    return desc

def get_ugc_name(ugc):
    """Return the WFO and county name."""
    cursor = get_dbconn("postgis").cursor()
    cursor.execute(
        "SELECT name, wfo from ugcs where ugc = %s and end_ts is null", (ugc,)
    )
    return cursor.fetchone()

def plotter(fdict):
    """Go"""
    ctx = get_autoplot_context(fdict, get_description())
    station = ctx["station"]
    limit = ctx["limit"]
    phenomena = ctx["phenomena"]
    significance = ctx["significance"]
    opt = ctx["opt"]
    state = ctx["state"]

    ctx["_nt"].sts["_ALL"] = {"name": "All Offices"}
    params = {}
    if opt == "wfo":
        wfo_limiter = " and wfo = :wfo "
        params["wfo"] = station if len(station) == 3 else station[1:]
        if station == "_ALL":
            wfo_limiter = ""
        title1 = f"NWS {ctx['_nt'].sts[station]['name']}"
    elif opt == "ugc":
        wfo_limiter = " and ugc = :ugc "
        params["ugc"] = ctx["ugc"]
        name, wfo = get_ugc_name(ctx["ugc"])
        title1 = (
            f"NWS {ctx['_nt'].sts[wfo]['name']} Issued for [{ctx['ugc']}] "
            f"{name}"
        )
    else:
        wfo_limiter = " and substr(ugc, 1, 2) = :state "
        params["state"] = state
        title1 = state_names[state]
    doy_limiter = ""
    title = "Entire Year"
    if limit.lower() == "yes":
        title = f"thru ~{datetime.date.today():%-d %b}"
        doy_limiter = (
            " and extract(doy from issue) <= "
            "extract(doy from 'TODAY'::date) "
        )

    desc = "wfo, "
    if phenomena in ["TR", "HU"]:
        desc = ""
    if phenomena in ["SV", "TO"] and significance == "A":
        desc = ""
    params["sig"] = significance
    params["ph"] = phenomena
    with get_sqlalchemy_conn("postgis") as conn:
        df = pd.read_sql(
            text(
                f"""
            with data as (
                SELECT distinct extract(year from issue)::int as yr,
                {desc} eventid
                from warnings where phenomena = :ph and significance = :sig
                {wfo_limiter} {doy_limiter})

            SELECT yr, count(*) from data GROUP by yr ORDER by yr ASC
        """
            ),
            conn,
            params=params,
        )
    if df.empty:
        if opt == "ugc":
            raise NoDataFound(
                "No events were found for this UGC + VTEC Phenomena\n"
                "combination, try flipping between county/zone"
            )
        raise NoDataFound("Sorry, no data found!")

    # Drop 2005 or 2008 if they are start years
    if df["yr"].min() == 2005:
        df = df[df["yr"] > 2005]
    elif df["yr"].min() == 2008:
        df = df[df["yr"] > 2008]
    title = (
        f"{title1} [{title}]\n"
        f"{vtec.get_ps_string(phenomena, significance)} "
        f"({phenomena}.{significance}) Count"
    )
    (fig, ax) = figure_axes(title=title, apctx=ctx)
    ax.bar(df["yr"], df["count"], align="center")
    ax.set_xlim(df["yr"].min() - 0.5, df["yr"].max() + 0.5)
    ymax = df["count"].max()
    ax.set_ylim(top=(ymax * 1.2))
    for _, row in df.iterrows():
        ax.text(
            row["yr"],
            row["count"] + (ymax * 0.05),
            str(row["count"]),
            rotation=90,
            ha="center",
        )
    ax.grid(True)
    ax.set_ylabel("Yearly Count")
    xx = "" if limit == "yes" else datetime.date.today().year
    ax.set_xlabel(f"{xx} thru approximately {datetime.date.today():%-d %b}")
    ax.yaxis.set_major_locator(MaxNLocator(integer=True))
    return fig, df

if __name__ == "__main__":
    plotter({})


text:
var TabPanel = function (parent) {
    this.parent = parent;
    if (parent == undefined) {
        this.parent = null;
    }

    this.panel = new Element(this.parent, { "tag": "div", "class": "tab-panel" });

    // The header...
    this.header = this.panel.appendElement({ "tag": "div", "class": "tab-panel-header" }).down();
    this.previousBtn = this.header.appendElement({ "tag": "div", "class": "tab-panel-btn" }).down();
    this.previousBtn.appendElement({ "tag": "i", "class": "fa fa-caret-left" })

    this.tabsDiv = this.header.appendElement({ "tag": "div", "class": "tab-panel-tabs-div" }).down();
    this.nextBtn = this.header.appendElement({ "tag": "div", "class": "tab-panel-btn" }).down();
    this.nextBtn.appendElement({ "tag": "i", "class": "fa fa-caret-right" })

    // The content...
    this.content = this.panel.appendElement({ "tag": "div", "class": "tab-panel-content" }).down();

    this.tabs = {};

    return this;
}

/**
 * Append a new Tab panel
 */
TabPanel.prototype.appendTab = function (id) {

    if (this.tabs[id] != null) {
        this.tabs[id].content.removeAllChilds()
        this.tabs[id].header.element.click()
        return this.tabs[id]
    }

    var header = this.tabsDiv.appendElement({ "tag": "div", "id": id + "_tab", "class": "tab-div" }).down();
    var title = header.appendElement({ "tag": "div" }).down();
    var closeBtn = header.appendElement({ "tag": "div", "class": "tab-panel-close-btn" }).down()
    closeBtn.appendElement({ "tag": "i", "class": "fa fa-times" })
    var content = this.content.appendElement({ "tag": "div", "id": id + "_content" }).down();
    var tab = { "title": title, "content": content, "header": header, "closeBtn":closeBtn }
    this.tabs[id] = tab;

    header.element.onmouseover = function (closeBtn) {
        return function () {
            closeBtn.element.style.visibility = "visible";
        }
    }(closeBtn)

    header.element.onmouseleave = function (closeBtn) {
        return function () {
            closeBtn.element.style.visibility = "hidden";
        }
    }(closeBtn)

    /** The tab content. */
    header.element.onclick = function (content, tabs) {
        return function () {
            for (var id in tabs) {
                tabs[id].title.parentElement.element.className = "tab-div";
                tabs[id].content.element.className = "";
            }
            this.className = "tab-div active";
            content.element.className = "active";
        }
    }(content, this.tabs)

    if (Object.keys(this.tabs).length == 1) {
        header.element.className = "tab-div active"
        header.element.click()
    }

    // The close button.
    closeBtn.element.onclick = function (header, container, content, tabs, id) {
        return function (evt) {
            evt.stopPropagation()
            header.element.parentNode.removeChild(header.element)
            container.removeElement(content)
            var index;
            for (var i = 0; i < Object.keys(tabs).length; i++) {
                if (Object.keys(tabs)[i] == id) {
                    index = i;
                    break;
                }
            }

            delete tabs[id]
            if (tabs[Object.keys(tabs)[index]] != undefined) {
                tabs[Object.keys(tabs)[index]].header.element.click()
            }else if (tabs[Object.keys(tabs)[index-1]] != undefined) {
                tabs[Object.keys(tabs)[index-1]].header.element.click()
            }

            if(Object.keys(tabs).length == 0){
                container.element.style.display = "none"
            }
        }
    }(header, this.content, content, this.tabs, id)

    this.content.element.style.display = ""

    header.element.click()

    return tab;
}


text:
package com.auth.managers.admin;

import com.auth.daos.admin.DaoPerfil;
import com.auth.daos.admin.DaoPerfilesPermisos;
import com.auth.entities.admin.Perfil;
import com.auth.entities.admin.PerfilesPermisos;
import com.auth.managers.commons.ManagerSQL;
import com.auth.models.ModelAsignarPermisos;
import java.util.List;

/**
 *
 * @author Alonso --- alonso@kriblet.com
 */
public class ManagerPerfil extends ManagerSQL<Perfil, Integer> {

    public ManagerPerfil() {
        super(new DaoPerfil());
    }

    /**
     * asigna los permisos colocados en el modelo ModelAsignarPermisos al usuario correspondiente a la propiedad id del modelo
     *
     * @param model modelo para asignar permisos
     * @return asignaciones de permisos con el perfil
     * @throws Exception si existe un error de I/O
     */
    public List<PerfilesPermisos> reemplazarPermisosDelPerfil(ModelAsignarPermisos model) throws Exception {
        DaoPerfilesPermisos daoPerfilesPermisos = new DaoPerfilesPermisos();
        return daoPerfilesPermisos.reemplazarPermisosDelPerfil(model.getId(), model.getPermisos());
    }
}


text:
<title>dlib C++ Library - byte_orderer.h</title>

// Copyright (C) 2006  Davis E. King (davis@dlib.net)
// License: Boost Software License   See LICENSE.txt for the full license.
#ifndef DLIB_BYTE_ORDEREr_
#define DLIB_BYTE_ORDEREr_

#include "byte_orderer/byte_orderer_kernel_1.h"

#endif // DLIB_BYTE_ORDEREr_


text:
<?PHP

session_start();
if (isset($_SESSION['username'])) {
    echo 'You (' . $_SESSION['username'] . ') are now logged out.';
}
else {
    echo 'You were not logged in.';
}
session_destroy();

?>


text:
<?php
namespace Model\Carrot2;

/**
 * Contains data for Carrot2 processing. Two kinds of jobs can be submitted:
 *
 * - Clustering directly provided documents. For this job, add the documents
 * to be clustered using the addDocument() method. All other data items are optional.
 *
 * - Clustering documents fetched by Carrot2 from some data source. For this job,
 * set the query and document source. All other data items are optional.
 */
class Job {
	private $documents = array ();
	private $query;
	private $source;
	private $algorithm;
	private $attributes = array ();

	/**
	 * Adds a document for clustering. You can either provide documents using this
	 * method or the document source to search using the setSource() method, but not
	 * both.
	 *
	 * @param $title title of the document to cluster, required
	 * @param $content content of the document to cluster, optional
	 * @param $url url of the document to cluster, optional
	 */
	public function addDocument($title, $content = '', $url = '', $id = null) {
		$this->documents [] = new Document ( $title, $content, $url, array (), $id );
	}

	public function getDocuments() {
		return $this->documents;
	}

	public function setDocuments($array) {
		foreach($array as $a){
			$this->documents [] = new Document ( $a[0], $a[1], '', array (), $a[2] );
		}
	}

	/**
	 * Sets the source from which Carrot should fetch documents for clustering. You can
	 * either set the document source using this method or directly add documents using
	 * addDocument but not both.
	 *
	 * @param $source identifier of the document source to query. Check the "Parameters"
	 * tab of the DCS welcome screen for the list of supported source identifiers.
	 */
	public function setSource($source) {
		$this->source = $source;
	}

	public function getSource() {
		return $this->source;
	}

	/**
	 * Sets the algorithm Carrot should use to cluster documents. Setting the algorithm
	 * is optional, if not set, the default algorithm will be used.
	 *
	 * @param $algorithm identified of the clustering algorithm to use. Check the "Parameters"
	 * tab of the DCS welcome screen for the list of supported algorithm identifiers.
	 */
	public function setAlgorithm($algorithm) {
		$this->algorithm = $algorithm;
	}

	public function getAlgorithm() {
		return $this->algorithm;
	}

	/**
	 * Sets the query to execute or query hint. If you want to use Carrot to query some data
	 * source specified by setSource(), you must set the query using this method. If you
	 * provide documents directly using the addDocument() method and you know which query
	 * generated these documents, you can optionally set this query using this method, which
	 * will improve the clustering quality.
	 *
	 * @param $query query to execute when document source is set or query hint when
	 * providing documents directly
	 */
	public function setQuery($query) {
		$this->query = $query;
	}

	public function getQuery() {
		return $this->query;
	}

	/**
	 * Sets additional tuning attributes for Carrot2 document sources or algorithms. Please
	 * refer to Carrot2 manual for the list of supported attributes for each source and
	 * algorithm.
	 *
	 * @param $attributes an associative array with attribute keys as keys, and attribute
	 * values as values
	 */
	public function setAttributes(array $attributes) {
		if (is_array ( $attributes )) {
			$this->attributes = $attributes;
		}
	}

	/**
	 * Sets one additional tuning attribute for Carrot2 document sources or algorithms.
	 * Please refer to Carrot2 manual for the list of supported attributes for each source
	 * and algorithm.
	 *
	 * @param $key attribute key
	 * @param $value attribute value
	 */
	public function setAttribute($key, $value) {
		$this->attributes [$key] = $value;
	}

	public function getAttributes() {
		return $this->attributes;
	}
}


text:
[data-color-mode='light'] .rgh-conflict-marker svg {
	color: #ccc;
}

[data-color-mode='dark'] .rgh-conflict-marker svg {
	color: var(--color-fg-muted);
}


text:
namespace Moonfish.Guerilla.Tags
{
    using Moonfish.Tags;
    using Moonfish.Model;
    using System.IO;
    using System.Collections.Generic;
    using System.Linq;

    public partial class RenderModelSectionDataBlock : GuerillaBlock, IWriteQueueable
    {
        public GlobalGeometrySectionStructBlock Section = new GlobalGeometrySectionStructBlock();
        public GlobalGeometryPointDataStructBlock PointData = new GlobalGeometryPointDataStructBlock();
        public RenderModelNodeMapBlock[] NodeMap = new RenderModelNodeMapBlock[0];
        private byte[] fieldpad = new byte[4];
        public override int SerializedSize
        {
            get
            {
                return 112;
            }
        }
        public override int Alignment
        {
            get
            {
                return 4;
            }
        }
        public override System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer> ReadFields(System.IO.BinaryReader binaryReader)
        {
            System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer> pointerQueue = new System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer>(base.ReadFields(binaryReader));
            pointerQueue = new System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer>(pointerQueue.Concat(this.Section.ReadFields(binaryReader)));
            pointerQueue = new System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer>(pointerQueue.Concat(this.PointData.ReadFields(binaryReader)));
            pointerQueue.Enqueue(binaryReader.ReadBlamPointer(1));
            this.fieldpad = binaryReader.ReadBytes(4);
            return pointerQueue;
        }
        public override void ReadInstances(System.IO.BinaryReader binaryReader, System.Collections.Generic.Queue<Moonfish.Tags.BlamPointer> pointerQueue)
        {
            base.ReadInstances(binaryReader, pointerQueue);
            this.Section.ReadInstances(binaryReader, pointerQueue);
            this.PointData.ReadInstances(binaryReader, pointerQueue);
            this.NodeMap = base.ReadBlockArrayData<RenderModelNodeMapBlock>(binaryReader, pointerQueue.Dequeue());
        }
        public override void QueueWrites(Moonfish.Guerilla.QueueableBinaryWriter queueableBinaryWriter)
        {
            base.QueueWrites(queueableBinaryWriter);
            this.Section.QueueWrites(queueableBinaryWriter);
            this.PointData.QueueWrites(queueableBinaryWriter);
            queueableBinaryWriter.QueueWrite(this.NodeMap);
        }
        public override void Write_(Moonfish.Guerilla.QueueableBinaryWriter queueableBinaryWriter)
        {
            base.Write_(queueableBinaryWriter);
            this.Section.Write_(queueableBinaryWriter);
            this.PointData.Write_(queueableBinaryWriter);
            queueableBinaryWriter.WritePointer(this.NodeMap);
            queueableBinaryWriter.Write(this.fieldpad);
        }
    }
}


text:
GraphiteReceiver CHANGELOG
==========================

1.0-IPM-2
---------
- Nathan Haneysmith <nathan.haneysmith@nordstrom.com> - Sample Config w Prefix

1.0-IPM-1
---------
- Nathan Haneysmith <nathan.haneysmith@nordstrom.com> - Adding customizable
  prefix via config file

1.0-IPM-3.2
-----------
- Lava Kumar <lava.a.basavapatna@nordstrom.com>
- Changes Made:
    : Modified to include cluster name in Graphite Streams. The interval for cache refreshment is configurable.
    : The GraphiteReceiver connects to multiple Graphite Nodes in the backend (via port 2003). For effective load balancing
      among multiple graphite-cyanite nodes, modified to support graphite server connection resets. This is configurable
      attribute in config/graphite.xml.
    : Look at README.md for alternative way of starting StatsFeeder server.


text:
.class Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
.super Ljava/lang/Object;
.source "FmRadioTuner.java"

# interfaces
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnStartedListener;
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnStateChangedListener;
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnScanListener;
.implements Lcom/sonyericsson/fmradio/service/PhfHandler$PhfListener;
.implements Lcom/sonyericsson/fmradio/service/AudioHandler$AudioListener;
.implements Lcom/sonyericsson/fmradio/service/TimerHandler$TimerListener;
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnRDSDataFoundListener;
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnSignalStrengthChangedListener;
.implements Lcom/stericsson/hardware/fm/FmReceiver$OnPlayingInStereoListener;
.implements Lcom/sonyericsson/fmradio/service/SystemStateHandler$SystemStateListener;

# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/sonyericsson/fmradio/service/FmRadioTuner;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x2
    name = "Listener"
.end annotation

# instance fields
.field private mStatesFlipped:Z

.field final synthetic this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

# direct methods
.method private constructor <init>(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V
    .locals 1
    .parameter

    .prologue
    .line 307
    iput-object p1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 403
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->mStatesFlipped:Z

    return-void
.end method

.method synthetic constructor <init>(Lcom/sonyericsson/fmradio/service/FmRadioTuner;Lcom/sonyericsson/fmradio/service/FmRadioTuner$1;)V
    .locals 0
    .parameter "x0"
    .parameter "x1"

    .prologue
    .line 307
    invoke-direct {p0, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;-><init>(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    return-void
.end method

# virtual methods
.method public onAudioBecomingNoisy()V
    .locals 2

    .prologue
    .line 525
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->getReceiverState()Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->audioBecomingNoisy(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;)V

    .line 526
    return-void
.end method

.method public onAudioFocusLost()V
    .locals 2

    .prologue
    .line 501
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->getReceiverState()Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->audioFocusLost(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;)V

    .line 502
    return-void
.end method

.method public onFullScan([I[IZ)V
    .locals 9
    .parameter "frequency"
    .parameter "signalStrength"
    .parameter "aborted"

    .prologue
    const/4 v8, 0x1

    const/4 v7, 0x0

    .line 330
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v4

    if-eqz v4, :cond_0

    .line 364
    :goto_0
    return-void

    .line 334
    :cond_0
    const/4 v4, 0x2

    new-array v5, v4, [Ljava/lang/Object;

    array-length v4, p1

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    aput-object v4, v5, v7

    if-eqz p3, :cond_1

    const-string v4, "aborted"

    :goto_1
    aput-object v4, v5, v8

    invoke-static {v5}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 335
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v4

    invoke-virtual {v4}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->clearStations()V

    .line 336
    const/4 v2, 0x0

    .local v2, i:I
    :goto_2
    array-length v4, p1

    if-ge v2, v4, :cond_2

    .line 337
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v4

    aget v5, p1, v2

    invoke-virtual {v4, v5}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->addStation(I)Z

    .line 336
    add-int/lit8 v2, v2, 0x1

    goto :goto_2

    .line 334
    .end local v2           #i:I
    :cond_1
    const-string v4, "done"

    goto :goto_1

    .line 339
    .restart local v2       #i:I
    :cond_2
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v4

    invoke-virtual {v4}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->save()V

    .line 342
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v4

    iget-object v5, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v5}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v5

    invoke-virtual {v4, v5}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->findClosestStation(I)Ljava/lang/Integer;

    move-result-object v0

    .line 343
    .local v0, closest:Ljava/lang/Integer;
    if-eqz v0, :cond_3

    .line 344
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I

    move-result v5

    invoke-virtual {v4, v5}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setFrequency(I)V

    .line 362
    :goto_3
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1300(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 363
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    goto :goto_0

    .line 347
    :cond_3
    :try_start_0
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v4

    invoke-virtual {v4}, Lcom/stericsson/hardware/fm/FmReceiver;->getFrequency()I

    move-result v3

    .line 348
    .local v3, tempFrequency:I
    if-eqz v3, :cond_4

    const/4 v4, -0x1

    if-eq v3, v4, :cond_4

    .line 349
    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #setter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v4, v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1202(Lcom/sonyericsson/fmradio/service/FmRadioTuner;I)I
    :try_end_0
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0

    goto :goto_3

    .line 357
    .end local v3           #tempFrequency:I
    :catch_0
    move-exception v1

    .line 358
    .local v1, e:Ljava/io/IOException;
    new-array v4, v8, [Ljava/lang/Object;

    const-string v5, "failed to get frequency"

    aput-object v5, v4, v7

    invoke-static {v4}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    goto :goto_3

    .line 355
    .end local v1           #e:Ljava/io/IOException;
    .restart local v3       #tempFrequency:I
    :cond_4
    const/4 v4, 0x1

    :try_start_1
    new-array v4, v4, [Ljava/lang/Object;

    const/4 v5, 0x0

    const-string v6, "returned frequency is invalid"

    aput-object v6, v4, v5

    invoke-static {v4}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V
    :try_end_1
    .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0

    goto :goto_3
.end method

.method public onMediaButtonPress(I)V
    .locals 2
    .parameter "nbrOfPresses"

    .prologue
    .line 496
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->getReceiverState()Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v1

    invoke-virtual {v0, v1, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->onMediaButtonPress(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;I)V

    .line 497
    return-void
.end method

.method public onPhfConnected(Z)V
    .locals 2
    .parameter "connected"

    .prologue
    .line 488
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->getReceiverState()Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v1

    invoke-virtual {v0, v1, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->phfStatusChanged(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;Z)V

    .line 490
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2300(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 491
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    .line 492
    return-void
.end method

.method public onPlayingInStereo(Z)V
    .locals 5
    .parameter "inStereo"

    .prologue
    .line 476
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v2

    if-eqz v2, :cond_1

    .line 484
    :cond_0
    return-void

    .line 480
    :cond_1
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mSignalQualityListeners:Ljava/util/Set;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Ljava/util/Set;

    move-result-object v2

    invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v0

    .local v0, i$:Ljava/util/Iterator;
    :goto_0
    invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z

    move-result v2

    if-eqz v2, :cond_0

    invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;

    .line 481
    .local v1, l:Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;
    const/4 v2, 0x1

    new-array v2, v2, [Ljava/lang/Object;

    const/4 v3, 0x0

    invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v4

    aput-object v4, v2, v3

    invoke-static {v2}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 482
    invoke-interface {v1, p1}, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;->onPlayingInStereo(Z)V

    goto :goto_0
.end method

.method public onRDSDataFound(Landroid/os/Bundle;I)V
    .locals 3
    .parameter "rdsData"
    .parameter "frequency"

    .prologue
    .line 437
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v0

    if-eqz v0, :cond_0

    .line 446
    :goto_0
    return-void

    .line 441
    :cond_0
    const/4 v0, 0x2

    new-array v0, v0, [Ljava/lang/Object;

    const/4 v1, 0x0

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    aput-object v2, v0, v1

    const/4 v1, 0x1

    const-string v2, "PSN"

    invoke-virtual {p1, v2}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    aput-object v2, v0, v1

    invoke-static {v0}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 442
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v0

    invoke-virtual {v0, p2, p1}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->updateRdsData(ILandroid/os/Bundle;)V

    .line 444
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2000(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 445
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    goto :goto_0
.end method

.method public onScan(IIIZ)V
    .locals 5
    .parameter "tunedFrequency"
    .parameter "signalStrength"
    .parameter "scanDirection"
    .parameter "aborted"

    .prologue
    .line 369
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v2

    if-eqz v2, :cond_0

    .line 401
    :goto_0
    return-void

    .line 373
    :cond_0
    const/4 v2, 0x3

    new-array v2, v2, [Ljava/lang/Object;

    const/4 v3, 0x0

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    aput-object v4, v2, v3

    const/4 v3, 0x1

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    aput-object v4, v2, v3

    const/4 v3, 0x2

    invoke-static {p4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v4

    aput-object v4, v2, v3

    invoke-static {v2}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 375
    if-nez p4, :cond_1

    .line 377
    packed-switch p3, :pswitch_data_0

    .line 387
    :cond_1
    :goto_1
    if-nez p4, :cond_2

    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v2

    invoke-virtual {v2}, Lcom/stericsson/hardware/fm/FmReceiver;->isTunedToValidChannel()Z

    move-result v2

    if-eqz v2, :cond_2

    .line 388
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v2

    invoke-virtual {v2, p1}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->addStation(I)Z

    move-result v2

    if-eqz v2, :cond_2

    .line 389
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v2

    invoke-virtual {v2}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->save()V

    .line 393
    :cond_2
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #setter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v2, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1202(Lcom/sonyericsson/fmradio/service/FmRadioTuner;I)I

    .line 395
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mSignalQualityListeners:Ljava/util/Set;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Ljava/util/Set;

    move-result-object v2

    invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v0

    .local v0, i$:Ljava/util/Iterator;
    :goto_2
    invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z

    move-result v2

    if-eqz v2, :cond_3

    invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;

    .line 396
    .local v1, l:Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->quantifySignalStrength(I)I
    invoke-static {v2, p2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1500(Lcom/sonyericsson/fmradio/service/FmRadioTuner;I)I

    move-result v2

    invoke-interface {v1, v2}, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;->onSignalStrengthChanged(I)V

    goto :goto_2

    .line 379
    .end local v0           #i$:Ljava/util/Iterator;
    .end local v1           #l:Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;
    :pswitch_0
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v2

    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v3

    invoke-virtual {v2, v3, p1}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->removeStationRange(II)V

    goto :goto_1

    .line 382
    :pswitch_1
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v2

    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v3

    invoke-virtual {v2, p1, v3}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->removeStationRange(II)V

    goto :goto_1

    .line 399
    .restart local v0       #i$:Ljava/util/Iterator;
    :cond_3
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1600(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 400
    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    goto/16 :goto_0

    .line 377
    nop

    :pswitch_data_0
    .packed-switch 0x0
        :pswitch_1
        :pswitch_0
    .end packed-switch
.end method

.method public onSignalStrengthChanged(I)V
    .locals 6
    .parameter "signalStrength"

    .prologue
    .line 450
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v3

    if-eqz v3, :cond_1

    .line 472
    :cond_0
    return-void

    .line 454
    :cond_1
    const/4 v3, 0x1

    new-array v3, v3, [Ljava/lang/Object;

    const/4 v4, 0x0

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v5

    aput-object v5, v3, v4

    invoke-static {v3}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 456
    const/4 v0, 0x0

    .line 457
    .local v0, changed:Z
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v3

    invoke-virtual {v3}, Lcom/stericsson/hardware/fm/FmReceiver;->isTunedToValidChannel()Z

    move-result v3

    if-eqz v3, :cond_3

    .line 458
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v3

    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v4

    invoke-virtual {v3, v4}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->addStation(I)Z

    move-result v0

    .line 463
    :goto_0
    if-eqz v0, :cond_2

    .line 464
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v3

    invoke-virtual {v3}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->save()V

    .line 465
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 466
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    .line 469
    :cond_2
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mSignalQualityListeners:Ljava/util/Set;
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Ljava/util/Set;

    move-result-object v3

    invoke-interface {v3}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v1

    .local v1, i$:Ljava/util/Iterator;
    :goto_1
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v3

    if-eqz v3, :cond_0

    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;

    .line 470
    .local v2, l:Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->quantifySignalStrength(I)I
    invoke-static {v3, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1500(Lcom/sonyericsson/fmradio/service/FmRadioTuner;I)I

    move-result v3

    invoke-interface {v2, v3}, Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;->onSignalStrengthChanged(I)V

    goto :goto_1

    .line 460
    .end local v1           #i$:Ljava/util/Iterator;
    .end local v2           #l:Lcom/sonyericsson/fmradio/service/Tuner$SignalQualityListener;
    :cond_3
    iget-object v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mRadioStationHandler:Lcom/sonyericsson/fmradio/service/RadioStationHandler;
    invoke-static {v3}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1100(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/RadioStationHandler;

    move-result-object v3

    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mFrequency:I
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v4

    invoke-virtual {v3, v4}, Lcom/sonyericsson/fmradio/service/RadioStationHandler;->removeStation(I)Z

    move-result v0

    goto :goto_0
.end method

.method public onSleep()V
    .locals 2

    .prologue
    .line 511
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->removeOnRDSDataFoundListener(Lcom/stericsson/hardware/fm/FmReceiver$OnRDSDataFoundListener;)V

    .line 512
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->removeOnSignalStrengthChangedListener(Lcom/stericsson/hardware/fm/FmReceiver$OnSignalStrengthChangedListener;)V

    .line 513
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->removeOnPlayingInStereoListener(Lcom/stericsson/hardware/fm/FmReceiver$OnPlayingInStereoListener;)V

    .line 514
    return-void
.end method

.method public onStarted()V
    .locals 7

    .prologue
    const/4 v6, 0x1

    const/4 v5, 0x0

    .line 313
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v1

    if-eqz v1, :cond_0

    .line 326
    :goto_0
    return-void

    .line 318
    :cond_0
    :try_start_0
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v1

    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mForcedMonoPlayback:Z
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$800(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v2

    invoke-virtual {v1, v2}, Lcom/stericsson/hardware/fm/FmReceiver;->setForceMono(Z)V

    .line 319
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v2

    invoke-virtual {v2}, Lcom/stericsson/hardware/fm/FmReceiver;->getThreshold()I

    move-result v2

    #setter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mThreshold:I
    invoke-static {v1, v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1002(Lcom/sonyericsson/fmradio/service/FmRadioTuner;I)I

    .line 320
    const/4 v1, 0x1

    new-array v1, v1, [Ljava/lang/Object;

    const/4 v2, 0x0

    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    const-string v4, "threshold: "

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    iget-object v4, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mThreshold:I
    invoke-static {v4}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1000(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)I

    move-result v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    aput-object v3, v1, v2

    invoke-static {v1}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V
    :try_end_0
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
    .catch Ljava/lang/IllegalStateException; {:try_start_0 .. :try_end_0} :catch_1

    goto :goto_0

    .line 321
    :catch_0
    move-exception v0

    .line 322
    .local v0, e:Ljava/io/IOException;
    new-array v1, v6, [Ljava/lang/Object;

    const-string v2, "Failed to read threshold value"

    aput-object v2, v1, v5

    invoke-static {v1}, Lcom/sonyericsson/fmradio/util/LogUtil;->logw([Ljava/lang/Object;)V

    goto :goto_0

    .line 323
    .end local v0           #e:Ljava/io/IOException;
    :catch_1
    move-exception v0

    .line 324
    .local v0, e:Ljava/lang/IllegalStateException;
    new-array v1, v6, [Ljava/lang/Object;

    const-string v2, "Ignored illegal state exception"

    aput-object v2, v1, v5

    invoke-static {v1}, Lcom/sonyericsson/fmradio/util/LogUtil;->logw([Ljava/lang/Object;)V

    goto :goto_0
.end method

.method public onStateChanged(II)V
    .locals 5
    .parameter "oldState"
    .parameter "newState"

    .prologue
    const/4 v2, 0x2

    const/4 v4, 0x0

    const/4 v3, 0x1

    .line 407
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->isDestroyed()Z
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Z

    move-result v1

    if-eqz v1, :cond_1

    .line 433
    :cond_0
    :goto_0
    return-void

    .line 412
    :cond_1
    if-ne p1, v3, :cond_2

    if-eqz p2, :cond_4

    :cond_2
    if-ne p1, v2, :cond_3

    if-eq p2, v3, :cond_4

    :cond_3
    if-nez p1, :cond_5

    if-ne p2, v2, :cond_5

    .line 416
    :cond_4
    iput-boolean v3, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->mStatesFlipped:Z

    .line 417
    new-array v1, v3, [Ljava/lang/Object;

    const-string v2, "compensating for flipped state bug"

    aput-object v2, v1, v4

    invoke-static {v1}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 420
    :cond_5
    iget-boolean v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->mStatesFlipped:Z

    if-eqz v1, :cond_6

    .line 421
    move v0, p2

    .line 422
    .local v0, tmp:I
    move p2, p1

    .line 423
    move p1, v0

    .line 426
    .end local v0           #tmp:I
    :cond_6
    new-array v1, v3, [Ljava/lang/Object;

    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "state "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    const-string v3, " -> "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    aput-object v2, v1, v4

    invoke-static {v1}, Lcom/sonyericsson/fmradio/util/LogUtil;->logd([Ljava/lang/Object;)V

    .line 427
    if-eq p1, p2, :cond_0

    .line 428
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateMap:Ljava/util/Map;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1800(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Ljava/util/Map;

    move-result-object v1

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    invoke-interface {v1, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->onExit(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;)V

    .line 429
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateMap:Ljava/util/Map;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1800(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Ljava/util/Map;

    move-result-object v1

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    invoke-interface {v1, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    iget-object v2, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->onEnter(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;)V

    .line 430
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->setChanged()V
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)V

    .line 431
    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    invoke-virtual {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->notifyObservers()V

    goto/16 :goto_0
.end method

.method public onTimeout(Lcom/sonyericsson/fmradio/service/TimerHandler$TimerType;)V
    .locals 2
    .parameter "type"

    .prologue
    .line 506
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #calls: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->getReceiverState()Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2200(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mStateContext:Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$1700(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;

    move-result-object v1

    invoke-virtual {v0, v1, p1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner$State;->onTimeout(Lcom/sonyericsson/fmradio/service/FmRadioTuner$StateContext;Lcom/sonyericsson/fmradio/service/TimerHandler$TimerType;)V

    .line 507
    return-void
.end method

.method public onWake()V
    .locals 2

    .prologue
    .line 518
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->addOnRDSDataFoundListener(Lcom/stericsson/hardware/fm/FmReceiver$OnRDSDataFoundListener;)V

    .line 519
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->addOnSignalStrengthChangedListener(Lcom/stericsson/hardware/fm/FmReceiver$OnSignalStrengthChangedListener;)V

    .line 520
    iget-object v0, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mReceiver:Lcom/stericsson/hardware/fm/FmReceiver;
    invoke-static {v0}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$900(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/stericsson/hardware/fm/FmReceiver;

    move-result-object v0

    iget-object v1, p0, Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;->this$0:Lcom/sonyericsson/fmradio/service/FmRadioTuner;

    #getter for: Lcom/sonyericsson/fmradio/service/FmRadioTuner;->mListener:Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;
    invoke-static {v1}, Lcom/sonyericsson/fmradio/service/FmRadioTuner;->access$2400(Lcom/sonyericsson/fmradio/service/FmRadioTuner;)Lcom/sonyericsson/fmradio/service/FmRadioTuner$Listener;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/stericsson/hardware/fm/FmReceiver;->addOnPlayingInStereoListener(Lcom/stericsson/hardware/fm/FmReceiver$OnPlayingInStereoListener;)V

    .line 521
    return-void
.end method


text:
package org.apache.causeway.viewer.restfulobjects.rendering.util;

import java.util.List;

import org.apache.causeway.commons.internal.collections._Lists;
import org.apache.causeway.viewer.restfulobjects.applib.util.PathNode;

public final class FollowSpecUtil {

    private FollowSpecUtil() {
    }

    public static final List<List<PathNode>> asFollowSpecs(final List<List<String>> links) {

        final List<List<PathNode>> unmodifiable = _Lists.map(links, (List<String> pathParts) -> {
            return _Lists.newArrayList(_Lists.map(pathParts, (String input)->PathNode.parse(input)));
        });

        return _Lists.newArrayList(unmodifiable);
    }
}


text:
'use strict';

var RSVP        = require('rsvp'),
    Promise     = RSVP.Promise,
    provider    = require('./provider'),
    getVersions = require('./get-versions'),
    md5         = require('./md5'),
    extend      = require('lodash.assign'),
    debug       = require('debug')('leek'),
    request;

function Leek(options) {
  if (!options) {
    throw new Error('You need to specify the options.');
  }

  if (!options.trackingCode) {
    throw new Error('You need to specify the tracking code.');
  }

  if (!options.globalName) {
    throw new Error('You need to specify the global name.');
  }

  this.adapterUrls = options.adapterUrls || null;
  this.trackingCode = options.trackingCode;
  this.name         = options.name;

  if (this.name === undefined) {
    throw new Error('You need to specify name, this should be a unique identifier for the current client');
  }

  this.globalName   = options.globalName;
  this.clientId     = this.globalName + md5(this.name);
  this.version      = options.version || '';
  this.silent       = options.silent || process.env.DISABLE_LEEK;

  debug('initialize %o', {
    trackingCode: this.trackingCode,
    name: this.name,
    globalName: this.globalName,
    clientId: this.clientId,
    version: this.version,
    silent: this.silent
  });
}

Leek.prototype.setName = function(value) {
  this.name     = value;
  this.clientId = this.globalName + md5(this.name);
};

Leek.prototype._enqueue = function(eventType, meta) {
  debug('enqueue eventType:%s silent:%o payload:%o', eventType, this.silent, meta);
  if (this.silent) {
    return Promise.resolve();
  }

  if (request === undefined) {
    request = RSVP.denodeify(require('request'));
  }

  var params = provider.call(
    this,
    eventType,
    extend(meta, getVersions()),
    Date.now()
  );

  if (this.adapterUrls) {
    params.url = this.adapterUrls[eventType];
  }

  debug('request %o', params);
  return request(params);
};

Leek.prototype._getConfigObject = function() {
  return {
    name:         this.name,
    version:      this.version,
    trackingCode: this.trackingCode
  };
};

Leek.prototype.track = function(meta) {
  return this._enqueue('appview', {
    name:    meta.name,
    message: meta.message
  });
};

Leek.prototype.trackError = function(meta) {
  return this._enqueue('exception', {
    description: meta.description,
    fatal:       meta.isFatal
  });
};

Leek.prototype.trackTiming = function(meta) {
  return this._enqueue('timing', {
    category: meta.category,
    variable: meta.variable,
    value:    meta.value,
    label:    meta.label
  });
};

Leek.prototype.trackEvent = function(meta) {
  return this._enqueue('event', {
    name:     meta.name,
    category: meta.category,
    label:    meta.label,
    value:    meta.value
  });
};

module.exports = Leek;


text:
{% load i18n %}

  {% trans "Add parameters to the configuration group.  When all the parameters are added click 'Apply Changes' to persist changes." %}

{{ table.render }}


text:
package jadx.core.codegen;

import jadx.core.Consts;
import jadx.core.dex.attributes.AType;
import jadx.core.dex.attributes.IAttributeNode;
import jadx.core.dex.attributes.annotations.Annotation;
import jadx.core.dex.attributes.annotations.AnnotationsList;
import jadx.core.dex.attributes.annotations.MethodParameters;
import jadx.core.dex.info.FieldInfo;
import jadx.core.dex.instructions.args.ArgType;
import jadx.core.dex.nodes.ClassNode;
import jadx.core.dex.nodes.FieldNode;
import jadx.core.dex.nodes.MethodNode;
import jadx.core.utils.StringUtils;
import jadx.core.utils.exceptions.JadxRuntimeException;

import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

public class AnnotationGen {

	private final ClassNode cls;
	private final ClassGen classGen;

	public AnnotationGen(ClassNode cls, ClassGen classGen) {
		this.cls = cls;
		this.classGen = classGen;
	}

	public void addForClass(CodeWriter code) {
		add(cls, code);
	}

	public void addForMethod(CodeWriter code, MethodNode mth) {
		add(mth, code);
	}

	public void addForField(CodeWriter code, FieldNode field) {
		add(field, code);
	}

	public void addForParameter(CodeWriter code, MethodParameters paramsAnnotations, int n) {
		List<AnnotationsList> paramList = paramsAnnotations.getParamList();
		if (n >= paramList.size()) {
			return;
		}
		AnnotationsList aList = paramList.get(n);
		if (aList == null || aList.isEmpty()) {
			return;
		}
		for (Annotation a : aList.getAll()) {
			formatAnnotation(code, a);
			code.add(' ');
		}
	}

	private void add(IAttributeNode node, CodeWriter code) {
		AnnotationsList aList = node.get(AType.ANNOTATION_LIST);
		if (aList == null || aList.isEmpty()) {
			return;
		}
		for (Annotation a : aList.getAll()) {
			String aCls = a.getAnnotationClass();
			if (aCls.startsWith(Consts.DALVIK_ANNOTATION_PKG)) {
				// skip
				if (Consts.DEBUG) {
					code.startLine("// " + a);
				}
			} else {
				code.startLine();
				formatAnnotation(code, a);
			}
		}
	}

	private void formatAnnotation(CodeWriter code, Annotation a) {
		code.add('@');
		classGen.useType(code, a.getType());
		Map<String, Object> vl = a.getValues();
		if (!vl.isEmpty()) {
			code.add('(');
			if (vl.size() == 1 && vl.containsKey("value")) {
				encodeValue(code, vl.get("value"));
			} else {
				for (Iterator<Entry<String, Object>> it = vl.entrySet().iterator(); it.hasNext(); ) {
					Entry<String, Object> e = it.next();
					code.add(e.getKey());
					code.add(" = ");
					encodeValue(code, e.getValue());
					if (it.hasNext()) {
						code.add(", ");
					}
				}
			}
			code.add(')');
		}
	}

	@SuppressWarnings("unchecked")
	public void addThrows(MethodNode mth, CodeWriter code) {
		Annotation an = mth.getAnnotation(Consts.DALVIK_THROWS);
		if (an != null) {
			Object exs = an.getDefaultValue();
			code.add(" throws ");
			for (Iterator<ArgType> it = ((List<ArgType>) exs).iterator(); it.hasNext(); ) {
				ArgType ex = it.next();
				classGen.useType(code, ex);
				if (it.hasNext()) {
					code.add(", ");
				}
			}
		}
	}

	public Object getAnnotationDefaultValue(String name) {
		Annotation an = cls.getAnnotation(Consts.DALVIK_ANNOTATION_DEFAULT);
		if (an != null) {
			Annotation defAnnotation = (Annotation) an.getDefaultValue();
			return defAnnotation.getValues().get(name);
		}
		return null;
	}

	// TODO: refactor this boilerplate code
	public void encodeValue(CodeWriter code, Object val) {
		if (val == null) {
			code.add("null");
			return;
		}
		if (val instanceof String) {
			code.add(getStringUtils().unescapeString((String) val));
		} else if (val instanceof Integer) {
			code.add(TypeGen.formatInteger((Integer) val));
		} else if (val instanceof Character) {
			code.add(getStringUtils().unescapeChar((Character) val));
		} else if (val instanceof Boolean) {
			code.add(Boolean.TRUE.equals(val) ? "true" : "false");
		} else if (val instanceof Float) {
			code.add(TypeGen.formatFloat((Float) val));
		} else if (val instanceof Double) {
			code.add(TypeGen.formatDouble((Double) val));
		} else if (val instanceof Long) {
			code.add(TypeGen.formatLong((Long) val));
		} else if (val instanceof Short) {
			code.add(TypeGen.formatShort((Short) val));
		} else if (val instanceof Byte) {
			code.add(TypeGen.formatByte((Byte) val));
		} else if (val instanceof ArgType) {
			classGen.useType(code, (ArgType) val);
			code.add(".class");
		} else if (val instanceof FieldInfo) {
			// must be a static field
			FieldInfo field = (FieldInfo) val;
			InsnGen.makeStaticFieldAccess(code, field, classGen);
		} else if (val instanceof Iterable) {
			code.add('{');
			Iterator<?> it = ((Iterable) val).iterator();
			while (it.hasNext()) {
				Object obj = it.next();
				encodeValue(code, obj);
				if (it.hasNext()) {
					code.add(", ");
				}
			}
			code.add('}');
		} else if (val instanceof Annotation) {
			formatAnnotation(code, (Annotation) val);
		} else {
			// TODO: also can be method values
			throw new JadxRuntimeException("Can't decode value: " + val + " (" + val.getClass() + ")");
		}
	}

	private StringUtils getStringUtils() {
		return cls.dex().root().getStringUtils();
	}
}


text:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>

    <title>Wicket Examples - component reference</title>

    <wicket:extend>

wicket.extensions.markup.html.form.palette.Palette

	<wicket:link>[back to the reference]</wicket:link>

	The Palette component.

	 <form wicket:id="form">

	   <input type="submit" value="submit" />
	 </form>
	 feedbackmessages will be put here

    panel contents come here
</wicket:extend>


text:
<!DOCTYPE html>

    <meta charset="utf-8">
    <title>Kiwi.Renderers.GLBlendMode - Kiwi.js</title>
    <link rel="stylesheet" href="http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css">
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
    <link rel="stylesheet" href="../assets/css/main.css" id="site_styles">
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">

            API Docs for: 1.1.1

APIs

Classes

Modules

            <input type="search" id="api-filter" placeholder="Type to filter APIs">

Kiwi.Animations.Animation

Kiwi.Animations.Sequence

Kiwi.Animations.Tween

Kiwi.Animations.Tweens.Easing.Back

Kiwi.Animations.Tweens.Easing.Bounce

Kiwi.Animations.Tweens.Easing.Circular

Kiwi.Animations.Tweens.Easing.Cubic

Kiwi.Animations.Tweens.Easing.Elastic

Kiwi.Animations.Tweens.Easing.Exponential

Kiwi.Animations.Tweens.Easing.Linear

Kiwi.Animations.Tweens.Easing.Quadratic

Kiwi.Animations.Tweens.Easing.Quartic

Kiwi.Animations.Tweens.Easing.Quintic

Kiwi.Animations.Tweens.Easing.Sinusoidal

Kiwi.Animations.Tweens.TweenManager

Kiwi.Camera

Kiwi.CameraManager

Kiwi.Component

Kiwi.ComponentManager

Kiwi.Components.AnimationManager

Kiwi.Components.ArcadePhysics

Kiwi.Components.Box

Kiwi.Components.Input

Kiwi.Components.Sound

Kiwi.Entity

Kiwi.Files.DataLibrary

Kiwi.Files.File

Kiwi.Files.FileStore

Kiwi.Files.Loader

Kiwi.Game

Kiwi.GameManager

Kiwi.GameObjects.Sprite

Kiwi.GameObjects.StaticImage

Kiwi.GameObjects.Textfield

Kiwi.GameObjects.Tilemap.TileMap

Kiwi.GameObjects.Tilemap.TileMapLayer

Kiwi.GameObjects.Tilemap.TileType

Kiwi.Geom.AABB

Kiwi.Geom.Circle

Kiwi.Geom.Intersect

Kiwi.Geom.IntersectResult

Kiwi.Geom.Line

Kiwi.Geom.Matrix

Kiwi.Geom.Point

Kiwi.Geom.Ray

Kiwi.Geom.Rectangle

Kiwi.Geom.Transform

Kiwi.Geom.Vector2

Kiwi.Group

Kiwi.HUD.HUDComponents.Counter

Kiwi.HUD.HUDComponents.Time

Kiwi.HUD.HUDComponents.WidgetInput

Kiwi.HUD.HUDDisplay

Kiwi.HUD.HUDManager

Kiwi.HUD.HUDWidget

Kiwi.HUD.Widget.Bar

Kiwi.HUD.Widget.BasicScore

Kiwi.HUD.Widget.Button

Kiwi.HUD.Widget.Icon

Kiwi.HUD.Widget.IconBar

Kiwi.HUD.Widget.Menu

Kiwi.HUD.Widget.MenuItem

Kiwi.HUD.Widget.TextField

Kiwi.HUD.Widget.Time

Kiwi.IChild

Kiwi.Input.Finger

Kiwi.Input.InputManager

Kiwi.Input.Key

Kiwi.Input.Keyboard

Kiwi.Input.Keycodes

Kiwi.Input.Mouse

Kiwi.Input.MouseCursor

Kiwi.Input.Pointer

Kiwi.Input.Touch

Kiwi.PluginManager

Kiwi.Renderers.CanvasRenderer

Kiwi.Renderers.GLArrayBuffer

Kiwi.Renderers.GLBlendMode

Kiwi.Renderers.GLElementArrayBuffer

Kiwi.Renderers.GLRenderManager

Kiwi.Renderers.GLTextureManager

Kiwi.Renderers.GLTextureWrapper

Kiwi.Renderers.Renderer

Kiwi.Renderers.TextureAtlasRenderer

Kiwi.Shaders.ShaderManager

Kiwi.Shaders.ShaderPair

Kiwi.Shaders.TextureAtlasShader

Kiwi.Signal

Kiwi.SignalBinding

Kiwi.Sound.Audio

Kiwi.Sound.AudioLibrary

Kiwi.Sound.AudioManager

Kiwi.Stage

Kiwi.State

Kiwi.StateConfig

Kiwi.StateManager

Kiwi.System.Bootstrap

Kiwi.System.Device

Kiwi.Textures.SingleImage

Kiwi.Textures.SpriteSheet

Kiwi.Textures.TextureAtlas

Kiwi.Textures.TextureLibrary

Kiwi.Time.Clock

Kiwi.Time.ClockManager

Kiwi.Time.MasterClock

Kiwi.Time.Timer

Kiwi.Time.TimerEvent

Kiwi.Utils.Canvas

Kiwi.Utils.Common

Kiwi.Utils.GameMath

Kiwi.Utils.RandomDataGenerator

Kiwi.Utils.RequestAnimationFrame

Kiwi.Utils.Version

Animations

Components

Easing

Files

GameObjects

Geom

HUD

HUDComponents

Input

Kiwi

Renderers

Shaders

Sound

System

Textures

Tilemap

Time

Tweens

Utils

Widget

        Show:

            <input type="checkbox" id="api-show-inherited" checked>
            Inherited

            <input type="checkbox" id="api-show-protected">
            Protected

            <input type="checkbox" id="api-show-private">
            Private

            <input type="checkbox" id="api-show-deprecated">
            Deprecated

Kiwi.Renderers.GLBlendMode Class

            Defined in: src\render\GLBlendMode.ts:10

            Module: Renderers

            Parent Module: Kiwi

The Blend Mode object for recording and applying GL blend functions on a renderer.

Constructor

Kiwi.Renderers.GLBlendMode

            (

                        gl

                        params

)

            Kiwi.Renderers.GLBlendMode

                Defined in

        src\render\GLBlendMode.ts:10

Parameters:

                        gl
                        WebGLRenderingContext

                        params
                        Object

Returns:

                        Kiwi.Renderers.GLBlendMode:

Index

Methods

Properties

Item Index

Methods

                                apply

                                isIdentical

                                makeConstant

                                readConfig

                                setMode

Properties

                                _dstAlpha

                                _dstRGB

                                _modeAlpha

                                _modeRGB

                                _srcAlpha

                                _srcRGB

                                dirty

                                gl

Methods

apply

            (

                        gl

)

        public

                Defined in

        src\render\GLBlendMode.ts:324

Sets the blend mode on the video card

Parameters:

                        gl
                        WebGLRenderingContext

isIdentical

            (

                        blendMode

)

            Boolean

        public

                Defined in

        src\render\GLBlendMode.ts:304

Compares against another GLBlendMode

Parameters:

                        blendMode
                        Kiwi.Renderers.GLBlendMode

Returns:

                        Boolean:

Is this GLBlendMode identical to the passed GLBlendMode?

makeConstant

            (

                        code

)

            Number

        private

                Defined in

        src\render\GLBlendMode.ts:149

Formats a parameter into a GL context-compatible number. This recognises valid constant names, such as "SRC_ALPHA" or "REVERSE_AND_SUBTRACT", with some tolerance for case. It does not check for valid numeric codes.

Parameters:

                        code
                        String

Returns:

                        Number:

readConfig

            (

                        params

)

        public

                Defined in

        src\render\GLBlendMode.ts:104

Set a blend mode from a param object.

This is the main method for configuring blend modes on a renderer. It resolves to a pair of calls to blendEquationSeparate and blendFuncSeparate. The params object should specify compatible terms, namely { srcRGB: a, dstRGB: b, srcAlpha: c, dstAlpha: d, modeRGB: e, modeAlpha: f }. You should set abcdef using either direct calls to a gl context (ie. gl.SRC_ALPHA) or by using predefined strings.

The predefined string parameters for blendEquationSeparate are:

FUNC_ADD, FUNC_SUBTRACT, and FUNC_REVERSE_SUBTRACT.

The predefined string parameters for blendFuncSeparate are:

ZERO, ONE, SRC_COLOR, ONE_MINUS_SRC_COLOR, DST_COLOR, ONE_MINUS_DST_COLOR, SRC_ALPHA, ONE_MINUS_SRC_ALPHA, DST_ALPHA, ONE_MINUS_DST_ALPHA, SRC_ALPHA_SATURATE, CONSTANT_COLOR, ONE_MINUS_CONSTANT_COLOR, CONSTANT_ALPHA, and ONE_MINUS_CONSTANT_ALPHA.

Parameters:

                        params
                        Object

setMode

            (

                        mode

)

        public

                Defined in

        src\render\GLBlendMode.ts:232

Sets a blend mode by name. Name is case-tolerant.

These are shortcuts to setting the blend function parameters manually. A listing of valid modes follows. Each is listed with the parameters modeRGB, modeAlpha, srcRGB, dstRGB, srcAlpha, and dstAlpha, constants used in the gl calls "blendEquationSeparate(modeRGB, modeAlpha)" and "blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha". This is very technical, and will probably only be useful if you are developing your own shaders for Kiwi.js.

"NORMAL" or any non-recognised string will draw as normal, blending colour via alpha. FUNC_ADD, FUNC_ADD, SRC_ALPHA, ONE_MINUS_SRC_ALPHA, ONE, ONE.

"ADD" or "ADDITIVE" will add pixels to the background, creating a lightening effect. FUNC_ADD, FUNC_ADD, SRC_ALPHA, ONE, ONE, ONE.

"SUBTRACT" or "SUBTRACTIVE" will subtract pixels from the background, creating an eerie dark effect. FUNC_REVERSE_SUBTRACT, FUNC_ADD, SRC_ALPHA, ONE, ONE, ONE.

"ERASE" or "ERASER" will erase the game canvas itself, allowing the page background to show through. You can later draw over this erased region. FUNC_REVERSE_SUBTRACT, FUNC_REVERSE_SUBTRACT, SRC_ALPHA, ONE_MINUS_SRC_ALPHA, ONE, ONE.

"BLACK" or "BLACKEN" will turn all colour black, but preserve alpha. FUNC_ADD, FUNC_ADD, ZERO, ONE_MINUS_SRC_ALPHA, ONE, ONE.

Blend modes as seen in Adobe Photoshop are not reliably available via WebGL blend modes. Such blend modes require shaders to create.

Parameters:

                        mode
                        String

Properties

_dstAlpha

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:80

Destination alpha factor used in WebGL blendfunc.

_dstRGB

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:64

Destination RGB factor used in WebGL blendfunc.

_modeAlpha

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:96

Alpha mode used in WebGL blendfunc.

_modeRGB

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:88

RGB mode used in WebGL blendfunc.

_srcAlpha

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:72

Source alpha factor used in WebGL blendfunc.

_srcRGB

    Number

        private

                Defined in

        src\render\GLBlendMode.ts:56

Source RGB factor used in WebGL blendfunc.

dirty

    Boolean

        public

                Defined in

        src\render\GLBlendMode.ts:48

Dirty flag indicates whether this object has been altered and needs to be processed.

gl

    WebGLRenderingContext

        public

                Defined in

        src\render\GLBlendMode.ts:40

Target WebGL rendering context.


text:
import asyncore
import socket
import sys
import time

def debug(msg):
	print "[DEBUG] "+msg
	sys.stdout.flush()

class AsyncStream(asyncore.dispatcher_with_send):
	def __init__(self, host, attach_host=None, stream=None, retries=10):
		asyncore.dispatcher_with_send.__init__(self)
		self.stream = stream
		self.host = host
		self.attach_host = attach_host
		self.retries = retries
		self.rcvd_handshake = False
		self.create_connection()

	def create_connection(self):
		self.create_socket(socket.AF_INET, socket.SOCK_STREAM)
		self.connect(self.host)

	def attach_local(self):
		if self.attach_host != None and self.stream is None:
			debug('Attaching to local %s port %d' % (self.attach_host[0], self.attach_host[1]))
			self.stream = AsyncStream(self.attach_host, stream=self, retries=0)

	def handle_connect(self):
		debug("Connected to %s port %d" % (self.host[0], self.host[1]))

	def handle_close(self):
		self.close()
		if self.retries > 0 and not self.rcvd_handshake:
			time.sleep(0.5)
			self.retries -= 1
			debug('retrying debugger connection (#%d)' % self.retries)
			self.create_connection()
		else:
			debug('closed from %s port %d' % (self.host[0], self.host[1]))
			self.stream.close()

	def handle_read(self):
		data = self.recv(4096)
		if not data: pass

		if data == 'ti.debugger.handshake':
			self.rcvd_handshake = True
			self.attach_local()
		elif data != '':
			debug('read data: %s' % data)
			self.stream.send(data)

def to_addr(hostport):
	tokens = hostport.split(":")
	return (tokens[0], int(tokens[1]))

def run(local, remote):
	local_addr = to_addr(local)
	remote_addr = to_addr(remote)
	debug("Connecting to remote %s port %d..." % (remote_addr[0], remote_addr[1]))
	AsyncStream(remote_addr, attach_host=local_addr)
	asyncore.loop()

if __name__ == "__main__":
	if len(sys.argv) != 3:
		print "Usage: %s <local host:local port> <remote host:remote port>" % sys.argv[0]
		sys.exit(1)
	run(sys.argv[1], sys.argv[2])


text:
import { Component, ElementRef, Input, OnChanges, OnInit } from '@angular/core';
import { Angular2NvD3 } from './angular2-nvd3.core';

@Component({ selector: 'app-nvd3', template: '' })
export class NvD3Component implements OnChanges, OnInit {
    @Input()
    public options: any;

    @Input()
    public data: any;

    private ngNvD3: any;

    constructor(private el: ElementRef) {
        this.ngNvD3 = new Angular2NvD3.NgNvD3(this.el);
    }

    ngOnChanges(changes?) {
        this.ngNvD3.updateWithOptions(this.options, this.data);
    }

    ngOnInit() {
        this.ngNvD3.isViewInitialize(true);
        this.ngNvD3.updateWithOptions(this.options, this.data);
    }
}