<editor-fold defaultstate="collapsed" desc="AppendToResponse Setters">
196215
@JsonSetter("alternative_titles")
    public void setAlternativeTitles(WrapperAlternativeTitles alternativeTitles) {
        this.alternativeTitles = alternativeTitles.getTitles();
        addMethod(MovieMethod.ALTERNATIVE_TITLES);
    }
792357
@SuppressLint("CommitPrefEdits")
  @Override public void set(Set<String> value) {
    getPreferences().edit().putStringSet(getKey(), value).apply();
  }
1199612
function(oThis, sProp, oValue, bNotifyLayout) {
		var bSuppressRerendering = !!oThis.getDomRef();
		oThis.setProperty(sProp, oValue, bSuppressRerendering);
		if (bSuppressRerendering && bNotifyLayout) {
			notifyLayoutOnChange(oThis, "CTRL_POS");
		}
		return bSuppressRerendering;
	}
102124
@PluginFactory
  public static SpectatorAppender createAppender(
      @PluginAttribute("name") String name,
      @PluginAttribute("ignoreExceptions") boolean ignoreExceptions,
      @PluginElement("Layout") Layout<? extends Serializable> layout,
      @PluginElement("Filters") Filter filter) {

    if (name == null) {
      LOGGER.error("no name provided for SpectatorAppender");
      return null;
    }

    return new SpectatorAppender(Spectator.globalRegistry(), name, filter, layout, ignoreExceptions);
  }
731482
protected void initEventAdaptors()
    {
        if ( _implDecl == null || _implDecl.getMethods() == null )
            return;
        
        for (MethodDeclaration implMethod : _implDecl.getMethods())
        {
            //
            // Do a quick check for the presence of the EventHandler annotation on methods
            //
            if (implMethod.getAnnotation(EventHandler.class) == null ||
                implMethod.toString().equals("<clinit>()"))
                continue;
            
            //
            // EventHandler annotations on private methods cause compilation error.
            //
            if (isPrivateMethod(implMethod))
            {
                _ap.printError(implMethod, "eventhandler.method.is.private");
                continue;
            }

            //
            // If found, we must actually read the value using an AnnotationMirror, since it
            // contains a Class element (eventSet) that cannot be loaded
            //
            AnnotationMirror handlerMirror = null;
            for (AnnotationMirror annot : implMethod.getAnnotationMirrors())
            {
                if ( annot == null ||
                    annot.getAnnotationType() == null ||
                    annot.getAnnotationType().getDeclaration() == null ||
                    annot.getAnnotationType().getDeclaration().getQualifiedName() == null )
                    return;

                if ( annot.getAnnotationType().getDeclaration().getQualifiedName().equals(
                        "org.apache.beehive.controls.api.events.EventHandler"))
                {
                    handlerMirror = annot;
                    break;
                }
            }
            if (handlerMirror == null)
            {
                throw new CodeGenerationException("Unable to find EventHandler annotation on " +
                                                  implMethod);
            }

            AptAnnotationHelper handlerAnnot = new AptAnnotationHelper(handlerMirror);

            //
            // Locate the EventField based upon the field element value
            //
            String fieldName = (String)handlerAnnot.getObjectValue("field");
            AptEventField eventField = (AptEventField)getField(fieldName);
            if (eventField == null)
            {
                // eventField == null means this field isn't interesting for the purposes
                // of this processor (control impls).  However, only emit an error message
                // if the field isn't on a nested control
                if ( getControlField(fieldName) == null )
                    _ap.printError( implMethod, "eventhandler.field.not.found", fieldName );

                continue;
            }

            //
            // Locate the EventSet based upon the eventSet element value
            //
            TypeMirror tm = (TypeMirror)( handlerAnnot.getObjectValue("eventSet") );
            if ( tm == null )
                continue;
            String setName = tm.toString();
            AptControlInterface controlIntf = eventField.getControlInterface();

            // todo: remove workaround once bug has been resolved.
            /* Workaround for JIRA issue BEEHIVE-1143, eventset name may
               contain a '$' seperator between the outer class and inner class.
               Should be a '.' seperator. Only applies to Eclipse APT. This
               workaround is also present in AptControlClient.initEventAdapters
             */
            if (tm.getClass().getName().startsWith("org.eclipse.")) {
                setName = setName.replace('$', '.');
            }
            // end of workaround

            AptEventSet eventSet = controlIntf.getEventSet(setName);
            if (eventSet == null)
            {
                _ap.printError( implMethod, "eventhandler.eventset.not.found", setName );
                continue;
            }

            //
            // Register a new EventAdaptor for the EventSet, if none exists already
            //
            EventAdaptor adaptor = eventField.getEventAdaptor(eventSet);
            if (adaptor == null)
            {
                adaptor = new EventAdaptor(eventField, eventSet);
                eventField.addEventAdaptor(eventSet, adaptor);
            }

            //
            // Locate the EventSet method based upon the eventName element value.  Once
            // found, add a new AptEventHandler to the adaptor for this event.
            //
            boolean found = false;
            String eventName = (String)handlerAnnot.getObjectValue("eventName");
            AptMethod handlerMethod = new AptMethod(implMethod, _ap);
            for (AptEvent controlEvent : eventSet.getEvents())
            {
                if (controlEvent == null || controlEvent.getName() == null || 
                    !controlEvent.getName().equals(eventName))
                    continue;
                if ( controlEvent.getArgTypes() == null )
                    continue;

                //
                // BUGBUG: If the arguments are parameterized, then the event handler
                // might declare a specific bound version of the type, so a direct
                // comparison will fail.  If parameterized, we don't validate.
                //
                if (controlEvent.hasParameterizedArguments() ||
                    controlEvent.getArgTypes().equals(handlerMethod.getArgTypes()))
                {
                    adaptor.addHandler(controlEvent, 
                                       new AptEventHandler(controlEvent, implMethod, _ap));
                    found = true;
                    break;
                }
            }
            if (!found)
            {
                _ap.printError( implMethod, "eventhandler.method.not.found", setName );
            }
        } 
    }
665467
@Override
	public void afterPropertiesSet() {

		this.urlRewriter = new CssImageUrlRewriter(config);
		cssSkinResolver = (AbstractCssSkinVariantResolver) config.getGeneratorRegistry()
				.getVariantResolver(JawrConstant.SKIN_VARIANT_TYPE);
		if (cssSkinResolver == null) {
			cssSkinResolver = new CssSkinVariantResolver();
			config.getGeneratorRegistry().registerVariantResolver(cssSkinResolver);
		}

		// Init skin mapping
		String cfgSkinMappingType = config.getProperty(JawrConstant.SKIN_TYPE_MAPPING_CONFIG_PARAM);
		if (StringUtils.isNotEmpty(cfgSkinMappingType)) {
			if (cfgSkinMappingType.equals(JawrConstant.SKIN_TYPE_MAPPING_LOCALE_SKIN)
					|| cfgSkinMappingType.equals(JawrConstant.SKIN_TYPE_MAPPING_SKIN_LOCALE)) {
				this.skinMappingType = cfgSkinMappingType;
			} else {
				throw new IllegalArgumentException(
						"The value for the '" + JawrConstant.SKIN_TYPE_MAPPING_LOCALE_SKIN + "' " + "property ["
								+ cfgSkinMappingType + "] is invalid. " + "Please check the docs for valid values ");
			}
		}
		this.skinMapping = getSkinMapping(rsBrowser, config);
		resourceProviderStrategyClass = CssSkinVariantResourceProviderStrategy.class;

	}
787916
public void afterPropertiesSet() throws Exception {
		initParams = new HashMap<String, Object>(3);
		initParams.put("type", type);
		initParams.put("configPropertiesSourceClass",
				configPropertiesSourceClass);
		initParams.put("configLocation", configLocation);

		if (null == configuration && null == configLocation
				&& null == configPropertiesSourceClass)
			throw new ServletException(
					"Neither configuration nor configLocation nor configPropertiesSourceClass init params were set."
							+ " You must set at least the configuration or the configLocation param or the configPropertiesSourceClass. Please check your web.xml file");

		String fullMapping = "";
		if (StringUtils.isNotEmpty(mapping))
			fullMapping = mapping;

		if (StringUtils.isNotEmpty(controllerMapping))
			fullMapping = PathNormalizer.joinPaths(fullMapping,
					controllerMapping);

		initParams.put(JawrConstant.SERVLET_MAPPING_PROPERTY_NAME, fullMapping);
		if (mapping != null) {
			initParams.put(JawrConstant.SPRING_SERVLET_MAPPING_PROPERTY_NAME,
					PathNormalizer.asDirPath(mapping));
		}

		if (LOGGER.isDebugEnabled())
			LOGGER.debug("Initializing Jawr Controller's JawrRequestHandler");

		if (JawrConstant.BINARY_TYPE.equals(type)) {
			requestHandler = new JawrBinaryResourceRequestHandler(context, initParams,
					configuration);
		} else {
			requestHandler = new JawrRequestHandler(context, initParams,
					configuration);
		}
	}
1195315
private void appendOptionalArgString(StringBuilder sb, JSType paramType, boolean forAnnotations) {
    if (paramType.isUnionType()) {
      // Remove the optionality from the var arg.
      paramType =
          paramType
              .toMaybeUnionType()
              .getRestrictedUnion(registry.getNativeType(JSTypeNative.VOID_TYPE));
    }
    paramType.appendAsNonNull(sb, forAnnotations).append("=");
  }
40874
private void initComponents() {

		splMainSplitter = new javax.swing.JSplitPane();
		pnlDataBrowser = new javax.swing.JPanel();
		splSqlQuery = new javax.swing.JSplitPane();
		pnlEditor = new javax.swing.JPanel();
		pnlDataSet = new javax.swing.JPanel();
		lblDataSet = new javax.swing.JLabel();
		cboDataSet = new javax.swing.JComboBox();
		cmdExecute = new javax.swing.JButton();
		pnlQueryEditor = new javax.swing.JPanel();
		scrQueryEditor = new javax.swing.JScrollPane();
		txtQueryEditor = new javax.swing.JEditorPane();
		pnlResultFilter = new javax.swing.JPanel();
		lblShow = new javax.swing.JLabel();
		txtRowCount = new javax.swing.JTextField();
		lblRows = new javax.swing.JLabel();
		pnlResult = new javax.swing.JPanel();
		scrQueryResult = new javax.swing.JScrollPane();
		pnlOntologyBrowser = new javax.swing.JPanel();
		pnlConcept = new javax.swing.JPanel();
		pnlFocusURI = new javax.swing.JPanel();
		lblFocusOnURI = new javax.swing.JLabel();
		txtClassUriTemplate = new javax.swing.JTextField();
		pnlClassMap = new javax.swing.JPanel();
		pnlClassSeachComboBox = new javax.swing.JPanel();
		lblClass = new javax.swing.JLabel();
		pnlProperties = new javax.swing.JPanel();
		pnlPropertiesLabel = new javax.swing.JPanel();
		lblProperties = new javax.swing.JLabel();
		pnlPropertyList = new javax.swing.JPanel();
		pnlCommandButtons = new javax.swing.JPanel();
		cmdClearAll = new javax.swing.JButton();
		cmdCreateMapping = new javax.swing.JButton();

		setAlignmentX(5.0F);
		setAlignmentY(5.0F);
		setFont(new java.awt.Font("Arial", 0, 18)); // NOI18N
		setName("panel_master"); // NOI18N
		setPreferredSize(new java.awt.Dimension(640, 480));
		setLayout(new java.awt.BorderLayout());

		splMainSplitter.setDividerLocation(0.75);
		splMainSplitter.setResizeWeight(0.75);

		pnlDataBrowser.setName("panel_databrowser"); // NOI18N
		pnlDataBrowser.setLayout(new java.awt.BorderLayout());

		splSqlQuery.setBorder(javax.swing.BorderFactory.createEmptyBorder(2, 2, 2, 2));
		splSqlQuery.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);
		splSqlQuery.setResizeWeight(0.25);
		splSqlQuery.setMinimumSize(new java.awt.Dimension(550, 400));
		splSqlQuery.setPreferredSize(new java.awt.Dimension(550, 400));

		pnlEditor.setMinimumSize(new java.awt.Dimension(156, 100));
		pnlEditor.setPreferredSize(new java.awt.Dimension(156, 100));
		pnlEditor.setLayout(new java.awt.BorderLayout());

		pnlDataSet.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT));

		lblDataSet.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
		lblDataSet.setForeground(new java.awt.Color(53, 113, 163));
		lblDataSet.setText("Data Set:");
		pnlDataSet.add(lblDataSet);

		cboDataSet.setMinimumSize(new java.awt.Dimension(23, 23));
		cboDataSet.setPreferredSize(new java.awt.Dimension(240, 23));
		cboDataSet.setRenderer(new DataSetItemRenderer());
		cboDataSet.addActionListener(this::cboDataSetActionPerformed);
		pnlDataSet.add(cboDataSet);

		cmdExecute.setToolTipText("Execute query");
		cmdExecute.setIcon(IconLoader.getImageIcon("images/execute.png"));
		cmdExecute.setBorder(javax.swing.BorderFactory.createEtchedBorder());
		cmdExecute.setContentAreaFilled(false);
		cmdExecute.setPreferredSize(new java.awt.Dimension(25, 25));
		cmdExecute.addActionListener(this::cmdExecuteActionPerformed);
		pnlDataSet.add(cmdExecute);

		pnlEditor.add(pnlDataSet, java.awt.BorderLayout.PAGE_START);

		pnlQueryEditor.setLayout(new java.awt.BorderLayout());

		txtQueryEditor.setBorder(null);
		txtQueryEditor.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N
		txtQueryEditor.setMinimumSize(new java.awt.Dimension(100, 20));
		txtQueryEditor.setPreferredSize(new java.awt.Dimension(100, 20));
		txtQueryEditor.addKeyListener(new java.awt.event.KeyAdapter() {
			@Override
			public void keyPressed(java.awt.event.KeyEvent evt) {
				txtQueryEditorKeyPressed(evt);
			}
		});
		scrQueryEditor.setViewportView(txtQueryEditor);

		pnlQueryEditor.add(scrQueryEditor, java.awt.BorderLayout.CENTER);

		pnlEditor.add(pnlQueryEditor, java.awt.BorderLayout.CENTER);

		pnlResultFilter.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.RIGHT));

		lblShow.setText("Show");
		pnlResultFilter.add(lblShow);

		txtRowCount.setText("20");
		txtRowCount.setToolTipText("Insert the limit for data preview or 0 to present all data");
		txtRowCount.setMinimumSize(new java.awt.Dimension(25, 18));
		txtRowCount.setPreferredSize(new java.awt.Dimension(25, 18));
		txtRowCount.addFocusListener(new java.awt.event.FocusAdapter() {
			@Override
			public void focusLost(java.awt.event.FocusEvent evt) {
				txtRowCountFocusLost(evt);
			}
		});
		txtRowCount.addKeyListener(new java.awt.event.KeyAdapter() {
			@Override
			public void keyPressed(java.awt.event.KeyEvent evt) {
				txtRowCountKeyPressed(evt);
			}
		});
		pnlResultFilter.add(txtRowCount);

		lblRows.setText("rows");
		pnlResultFilter.add(lblRows);

		pnlEditor.add(pnlResultFilter, java.awt.BorderLayout.PAGE_END);

		splSqlQuery.setLeftComponent(pnlEditor);

		pnlResult.setLayout(new java.awt.BorderLayout());

		tblQueryResult = new SQLResultTable();
		tblQueryResult.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
		scrQueryResult.setViewportView(tblQueryResult);
		scrQueryResult.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
		pnlResult.add(scrQueryResult, java.awt.BorderLayout.CENTER);

		splSqlQuery.setRightComponent(pnlResult);

		pnlDataBrowser.add(splSqlQuery, java.awt.BorderLayout.CENTER);

		splMainSplitter.setLeftComponent(pnlDataBrowser);

		pnlOntologyBrowser.setBorder(javax.swing.BorderFactory.createEmptyBorder(5, 3, 0, 3));
		pnlOntologyBrowser.setName("panel_ontologybrowser"); // NOI18N
		pnlOntologyBrowser.setLayout(new java.awt.BorderLayout(0, 2));

		pnlConcept.setLayout(new java.awt.BorderLayout(0, 2));

		pnlFocusURI.setLayout(new java.awt.BorderLayout());

		lblFocusOnURI.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
		lblFocusOnURI.setForeground(new java.awt.Color(53, 113, 163));
		lblFocusOnURI.setText("Focus on URI:");
		pnlFocusURI.add(lblFocusOnURI, java.awt.BorderLayout.NORTH);

		txtClassUriTemplate.setFont(new java.awt.Font("Dialog", 0, 14)); // NOI18N
		txtClassUriTemplate.setText(defaultUriTemplate());
		txtClassUriTemplate.setMargin(new java.awt.Insets(0, 0, 0, 0));
		txtClassUriTemplate.setMinimumSize(new java.awt.Dimension(240, 23));
		txtClassUriTemplate.setPreferredSize(new java.awt.Dimension(240, 23));
		txtClassUriTemplate.addFocusListener(new java.awt.event.FocusAdapter() {
			@Override
			public void focusGained(java.awt.event.FocusEvent evt) {
				txtClassUriTemplateFocusGained(evt);
			}
			@Override
			public void focusLost(java.awt.event.FocusEvent evt) {
				txtClassUriTemplateFocusLost(evt);
			}
		});
		txtClassUriTemplate.addKeyListener(new java.awt.event.KeyAdapter() {
			@Override
			public void keyPressed(java.awt.event.KeyEvent evt) {
				txtClassUriTemplateKeyPressed(evt);
			}
		});
		pnlFocusURI.add(txtClassUriTemplate, java.awt.BorderLayout.SOUTH);

		pnlConcept.add(pnlFocusURI, java.awt.BorderLayout.NORTH);

		pnlClassMap.setBackground(new Color(240, 245, 240));
		pnlClassMap.setLayout(new java.awt.BorderLayout());

		pnlClassSeachComboBox.setLayout(new java.awt.BorderLayout());
		Vector<Object> v = new Vector<>();
		for (IRI c : obdaModel.getCurrentVocabulary().classes()) {
			v.addElement(new PredicateItem(c, CLASS, prefixManager));
		}
		cboClassAutoSuggest = new AutoSuggestComboBox(v);
		cboClassAutoSuggest.setRenderer(new ClassListCellRenderer());
		cboClassAutoSuggest.setMinimumSize(new java.awt.Dimension(195, 23));
		cboClassAutoSuggest.setPreferredSize(new java.awt.Dimension(195, 23));
		cboClassAutoSuggest.addItemListener(new java.awt.event.ItemListener () {
			@Override
			public void itemStateChanged(java.awt.event.ItemEvent evt) {
				cboClassAutoSuggestItemStateChanged(evt);
			}
		});
		JTextField txtComboBoxEditor = (JTextField) cboClassAutoSuggest.getEditor().getEditorComponent();
		txtComboBoxEditor.addKeyListener(new java.awt.event.KeyAdapter() {
			@Override
			public void keyPressed(java.awt.event.KeyEvent evt) {
				cboClassAutoSuggestKeyPressed(evt);
			}
		});
		pnlClassSeachComboBox.add(cboClassAutoSuggest, java.awt.BorderLayout.CENTER);
		pnlClassMap.add(pnlClassSeachComboBox, java.awt.BorderLayout.SOUTH);

		lblClass.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
		lblClass.setForeground(new java.awt.Color(53, 113, 163));
		lblClass.setText("Mapping for class (optional):");
		lblClass.setOpaque(true);
		pnlClassMap.add(lblClass, java.awt.BorderLayout.NORTH);

		pnlConcept.add(pnlClassMap, java.awt.BorderLayout.CENTER);

		pnlOntologyBrowser.add(pnlConcept, java.awt.BorderLayout.NORTH);

		pnlProperties.setLayout(new java.awt.BorderLayout(0, 3));

		pnlPropertiesLabel.setMinimumSize(new java.awt.Dimension(63, 30));
		pnlPropertiesLabel.setLayout(new java.awt.BorderLayout());

		lblProperties.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
		lblProperties.setForeground(new java.awt.Color(53, 113, 163));
		lblProperties.setText("Add new property mapping:");
		lblProperties.setBorder(javax.swing.BorderFactory.createEmptyBorder(2, 2, 2, 2));
		lblProperties.setOpaque(true);
		lblProperties.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
		pnlPropertiesLabel.add(lblProperties, java.awt.BorderLayout.CENTER);

		pnlProperties.add(pnlPropertiesLabel, java.awt.BorderLayout.NORTH);

		pnlPropertyList.setLayout(new java.awt.BorderLayout());

		pnlPropertyEditorList = new PropertyMappingPanel(obdaModel);
		pnlPropertyList.add(pnlPropertyEditorList);

		pnlProperties.add(pnlPropertyList, java.awt.BorderLayout.CENTER);

		pnlOntologyBrowser.add(pnlProperties, java.awt.BorderLayout.CENTER);

		pnlCommandButtons.setBorder(javax.swing.BorderFactory.createEmptyBorder(5, 0, 0, 0));
		pnlCommandButtons.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.RIGHT));

		cmdClearAll.setText("Clear All");
		cmdClearAll.setBorder(javax.swing.BorderFactory.createEtchedBorder());
		cmdClearAll.setContentAreaFilled(false);
		cmdClearAll.setPreferredSize(new java.awt.Dimension(70, 25));
		cmdClearAll.addActionListener(this::cmdClearAllActionPerformed);
		pnlCommandButtons.add(cmdClearAll);

		cmdCreateMapping.setText("Create Mapping");
		cmdCreateMapping.setBorder(javax.swing.BorderFactory.createEtchedBorder());
		cmdCreateMapping.setContentAreaFilled(false);
		cmdCreateMapping.setPreferredSize(new java.awt.Dimension(100, 25));
		cmdCreateMapping.addActionListener(this::cmdCreateMappingActionPerformed);
		pnlCommandButtons.add(cmdCreateMapping);

		pnlOntologyBrowser.add(pnlCommandButtons, java.awt.BorderLayout.SOUTH);

		splMainSplitter.setRightComponent(pnlOntologyBrowser);

		add(splMainSplitter, java.awt.BorderLayout.CENTER);
	}
104278
@Override
    public final void afterPropertiesSet() throws Exception {
        if (this.getLocator() != null) {
            this.logger.warn(
                    "Static "
                            + this.getClass().getName()
                            + " reference has already been set and setInstance is being called");
        }
        this.setLocator(this);
    }
1225350
private void doGetApplicationSetting() throws PageException {
	Struct sct = new StructImpl();
	pageContext.setVariable(getString("admin", action, "returnVariable"), sct);
	sct.set("scriptProtect", AppListenerUtil.translateScriptProtect(config.getScriptProtect()));

	// request timeout
	sct.set("requestTimeout", config.getRequestTimeout());
	sct.set("requestTimeout_day", Caster.toInteger(config.getRequestTimeout().getDay()));
	sct.set("requestTimeout_hour", Caster.toInteger(config.getRequestTimeout().getHour()));
	sct.set("requestTimeout_minute", Caster.toInteger(config.getRequestTimeout().getMinute()));
	sct.set("requestTimeout_second", Caster.toInteger(config.getRequestTimeout().getSecond()));

	// AllowURLRequestTimeout
	sct.set("AllowURLRequestTimeout", Caster.toBoolean(config.isAllowURLRequestTimeout()));

    }
306935
function SettingsRenderer(settingsListExplorer, serviceRegistry) {
		this.serviceRegistry = serviceRegistry;
		this.childWidgets = [];
		SelectionRenderer.call(this, {cachePrefix: 'pluginSettings', noRowHighlighting: true}, settingsListExplorer); //$NON-NLS-0$
	}
240638
@NonNull
    public ObservableAdapterBuilder<T> appends(@Nullable Observable<? extends Collection<? extends T>> appends) {
        mAppends = appends;
        return this;
    }
1175582
function appendInternal(that, propertyList, args, options) {
    var arrayToAppend = args[0]
    if(arrayToAppend.length === 0) return; //nothing to do

    var array = getPropertyValue(that.subject, propertyList)
    var originalLength = array.length

    var spliceArgs = [originalLength, 0]
    spliceArgs = spliceArgs.concat(arrayToAppend)
    var oldLength = array.length
    array.splice.apply(array, spliceArgs)

    var internalObservees = unionizeList(array, oldLength, array.length, options.union)

    var event = {type: 'added', property: propertyList, index: originalLength, count: arrayToAppend.length}
    if(options.data !== undefined) event.data = event.id = options.data
    that.emit('change', event)

    unionizeListEvents(that, internalObservees, propertyList, options.union)
}
372522
protected void initEventAdaptors()
    {
        if ( _clientDecl == null || _clientDecl.getMethods() == null )
            return;
        
        for (MethodDeclaration clientMethod : _clientDecl.getMethods())
        {
            //
            // Do a quick check for the presence of the EventHandler annotation on methods
            //
            if (clientMethod.getAnnotation(EventHandler.class) == null ||
                clientMethod.toString().equals("<clinit>()"))
                continue;

            //
            // EventHandler annotations on private methods cause compilation error.
            //
            if (isPrivateMethod(clientMethod))
            {
                _ap.printError( clientMethod, "eventhandler.method.is.private");
                continue;
            }

            //
            // If found, we must actually read the value using an AnnotationMirror, since it
            // contains a Class element (eventSet) that cannot be loaded
            //
            AnnotationMirror handlerMirror = null;
            for (AnnotationMirror annot : clientMethod.getAnnotationMirrors())
            {
                if ( annot == null ||
                    annot.getAnnotationType() == null ||
                    annot.getAnnotationType().getDeclaration() == null ||
                    annot.getAnnotationType().getDeclaration().getQualifiedName() == null )
                    return;

                if ( annot.getAnnotationType().getDeclaration().getQualifiedName().equals(
                        "org.apache.beehive.controls.api.events.EventHandler"))
                {
                    handlerMirror = annot;
                    break;
                }
            }
            if (handlerMirror == null)
            {
                throw new CodeGenerationException("Unable to find EventHandler annotation on " +
                                                  clientMethod);
            }

            AptAnnotationHelper handlerAnnot = new AptAnnotationHelper(handlerMirror);

            //
            // Locate the EventField based upon the field element value
            //
            String fieldName = (String)handlerAnnot.getObjectValue("field");
            AptEventField eventField = (AptEventField)getField(fieldName);
            if (eventField == null)
            {
                // Deliberately not issuing a diagnostic if an event handler specifies
                // a field that isn't a control.  Other annotation processors also
                // handle event handlers, so delegate diagnostic responsibility to them.
                continue;
            }

            //
            // Locate the EventSet based upon the eventSet element value
            //
            Object tmo = handlerAnnot.getObjectValue("eventSet");
            if (!(tmo instanceof TypeMirror))
                continue;
            
            TypeMirror tm = (TypeMirror)tmo;
            String setName = tm.toString();

            AptControlInterface controlIntf = eventField.getControlInterface();
            AptEventSet eventSet = controlIntf.getEventSet(setName);

            // todo: remove workaround once bug has been resolved.
            /* Workaround JIRA issue BEEHIVE-1143, eventset name may
               contain a '$' seperator between the outer class and inner class.
               Should be a '.' seperator. Only applies to Eclipse APT. This
               workaround is also present in AptControlImplementation.initEventAdapters
             */
            if (tm.getClass().getName().startsWith("org.eclipse.")) {
                setName = setName.replace('$', '.');
            }
            // end of workaround

            if (eventSet == null)
            {
                _ap.printError( clientMethod, "eventhandler.eventset.not.found", setName );
                continue;
            }

            //
            // Register a new EventAdaptor for the EventSet, if none exists already
            //
            EventAdaptor adaptor = eventField.getEventAdaptor(eventSet);
            if (adaptor == null)
            {
                adaptor = new EventAdaptor(eventField, eventSet);
                eventField.addEventAdaptor(eventSet, adaptor);
            }

            //
            // Locate the EventSet method based upon the eventName element value.  Once
            // found, add a new AptEventHandler to the adaptor for this event.
            //
            boolean found = false;
            String eventName = (String)handlerAnnot.getObjectValue("eventName");
            AptMethod handlerMethod = new AptMethod(clientMethod, _ap);

            //
            // Will start at the currrent event set and look up through any ones it
            // extends to try and find a matching event
            //
            while (eventSet != null)
            {
                for (AptEvent controlEvent : eventSet.getEvents())
                {
                    if (controlEvent == null || 
                        controlEvent.getName() == null || 
                        !controlEvent.getName().equals(eventName))
                        continue;

                    if ( controlEvent.getArgTypes() == null )
                        continue;

                    //
                    // BUGBUG: If the arguments are parameterized, then the event handler
                    // might declare a specific bound version of the type, so a direct
                    // comparison will fail.  If parameterized, we don't validate.
                    //
                    if (controlEvent.hasParameterizedArguments() ||
                        (controlEvent.getArgTypes().equals(handlerMethod.getArgTypes()) &&
                         controlEvent.getReturnType().equals(handlerMethod.getReturnType())
                        )
                       )
                    {
                        HashSet<String> throwSet = new HashSet<String>(controlEvent.getThrowsList());
                        ArrayList<String> handlerThrows = handlerMethod.getThrowsList();
                        boolean throwsMatches = true;
                        for ( String t : handlerThrows )
                        {
                            if ( !throwSet.contains(t) )
                                throwsMatches = false;
                        }
                    
                        if ( !throwsMatches )
                        {
                            _ap.printError( clientMethod, "eventhandler.throws.mismatch", handlerMethod.getName() );
                        }

                        adaptor.addHandler(controlEvent, 
                                       new AptEventHandler(controlEvent, clientMethod, _ap ));
                        found = true;
                        break;
                    }
                }
                if (found)  // outer loop too
                    break;

                //
                // Look up on the super event set if not found at the current level
                //
                eventSet = eventSet.getSuperEventSet();
            }
            if (!found)
            {
                _ap.printError( clientMethod, "eventhandler.method.not.found", setName );
            }
        } 
    }
63076
public void initPreferences(CmsWorkplaceManager wpManager) {

        CURRENT_DEFAULT_SETTINGS = this;
        Class<?> accessorClass = CmsUserSettingsStringPropertyWrapper.class;

        // first initialize all built-in preferences. these are:
        // a) Bean properties of CmsUserSettingsStringPropertyWrapper
        // b) Editor setting preferences
        // c) Gallery setting preferences
        PropertyDescriptor[] propDescs = PropertyUtils.getPropertyDescriptors(accessorClass);
        for (PropertyDescriptor descriptor : propDescs) {
            String name = descriptor.getName();
            Method getter = descriptor.getReadMethod();
            Method setter = descriptor.getWriteMethod();
            if ((getter == null) || (setter == null)) {
                continue;
            }

            PrefMetadata metadata = getter.getAnnotation(PrefMetadata.class);
            if (metadata == null) {
                CmsBuiltinPreference preference = new CmsBuiltinPreference(name);
                m_preferences.put(preference.getName(), preference);
            } else {
                try {
                    Constructor<?> constructor = metadata.type().getConstructor(String.class);
                    I_CmsPreference pref = (I_CmsPreference)constructor.newInstance(name);
                    m_preferences.put(pref.getName(), pref);
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
            }
        }

        Map<String, String> editorValues = getEditorSettings();
        if (wpManager.getWorkplaceEditorManager() != null) {
            for (String resType : wpManager.getWorkplaceEditorManager().getConfigurableEditors().keySet()) {
                if (!editorValues.containsKey(resType)) {
                    editorValues.put(resType, null);
                }
            }
        }
        for (Map.Entry<String, String> editorSettingEntry : editorValues.entrySet()) {
            CmsEditorPreference pref = new CmsEditorPreference(
                editorSettingEntry.getKey(),
                editorSettingEntry.getValue());
            m_preferences.put(pref.getName(), pref);
        }

        Map<String, String> galleryValues = new HashMap<String, String>(getStartGalleriesSettings());
        for (String key : wpManager.getGalleries().keySet()) {
            if (!galleryValues.containsKey(key)) {
                galleryValues.put(key, null);
            }
        }
        for (Map.Entry<String, String> galleryEntry : galleryValues.entrySet()) {
            CmsStartGallleryPreference pref = new CmsStartGallleryPreference(
                galleryEntry.getKey(),
                galleryEntry.getValue());
            m_preferences.put(pref.getName(), pref);
        }

        // Now process configured preferences. Each configuration entry is either
        // for a built-in preference, in which case we create a wrapper around the existing preference,
        // or for a custom user-defined preference.
        for (CmsPreferenceData prefData : m_preferenceData) {
            String name = prefData.getName();
            I_CmsPreference pref = null;
            if (m_preferences.containsKey(name)) {
                // we first remove the existing preference, because in a LinkedHashMap, put(key, value) will not
                // update the position of the entry if the key already exists
                pref = new CmsWrapperPreference(prefData, m_preferences.remove(name));
            } else {
                pref = new CmsUserDefinedPreference(
                    prefData.getName(),
                    prefData.getDefaultValue(),
                    prefData.getPropertyDefinition(),
                    prefData.getTab());
            }
            m_preferences.put(pref.getName(), pref);
            pref.setValue(this, prefData.getDefaultValue());
        }
    }
119765
public void setAppendix(final String pAppendix)
    {
        appendix = pAppendix;
        if (pAppendix != null && pAppendix.length() > 0) {
            getInputs().property("appendix", pAppendix);
            setDescription(
                "Create file '" + pluginPomProps.getName() + "' for use in JAR (appendix: " + pAppendix + ")");
        }
        else {
            getInputs().getProperties().remove("appendix");
            setDescription("Create file '" + pluginPomProps.getName() + "' for use in JAR (no appendix)");
        }
    }