aggregateentry.java

来自「tinyos最新版」· Java 代码 · 共 86 行

JAVA
86
字号
// $Id: AggregateEntry.java,v 1.6 2003/10/07 21:46:07 idgay Exp $/*									tab:4 * "Copyright (c) 2000-2003 The Regents of the University  of California.   * All rights reserved. * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose, without fee, and without written agreement is * hereby granted, provided that the above copyright notice, the following * two paragraphs and the author appear in all copies of this software. *  * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF * CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *  * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS * ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS." * * Copyright (c) 2002-2003 Intel Corporation * All rights reserved. * * This file is distributed under the terms in the attached INTEL-LICENSE      * file. If you do not find these files, copies can be found by writing to * Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, Berkeley, CA,  * 94704.  Attention:  Intel License Inquiry. */package net.tinyos.tinydb;public class AggregateEntry {    AggregateEntry(int type, String name, boolean isTemporal, int argCount, String readerClassName, String validatorClassName)    throws InvalidAggregateDefinitionException {        this.type = type;        this.name = name;		this.argCount = argCount;        this.isTemporal = isTemporal;              try {			Object r = Class.forName(readerClassName).newInstance();            if (r instanceof AggregateResultsReader) {				this.readerClassName = readerClassName;			} else throw new InvalidAggregateDefinitionException(					"Aggregate reader used for " + name + "doesnt implement AggregateResultsReader" );			r = Class.forName(validatorClassName).newInstance();			if (r instanceof AggregateArgumentValidator) {				this.validatorClassName = validatorClassName;			} else throw new InvalidAggregateDefinitionException(					"Argument validator used for " + name + "doesnt implement AggregateArgumentValidator" );        } catch (ClassNotFoundException e) {            System.out.println("Class not found");            throw new InvalidAggregateDefinitionException(e.getMessage());        } catch (InstantiationException e) {            System.out.println("Class not instantiated");            throw new InvalidAggregateDefinitionException(e.getMessage());        } catch (IllegalAccessException e) {            System.out.println("Illegal Access");            throw new InvalidAggregateDefinitionException(e.getMessage());        }    }            public int type() { return type; }         public String toString() { return name.toUpperCase(); }		public String getName() { return name; }	        public boolean isTemporal() { return isTemporal; }		public int getArgCount() { return argCount; }		protected String getValidatorClassName() { return validatorClassName; }		protected String getReaderClassName() { return readerClassName; }         	private int type;//byte code	private String name;	private boolean isTemporal;	private int argCount;//number of arguments expected	private String readerClassName;	private String validatorClassName;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?