⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 processimpl.java

📁 开发owl的API,提供了W3C规定标准接口,是目前比较少的API.
💻 JAVA
字号:
// The MIT License
//
// Copyright (c) 2004 Evren Sirin
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.

/*
 * Created on Dec 27, 2003
 *
 */
package org.mindswap.owls.process.impl;

import java.net.URI;

import org.mindswap.owls.OWLSFactory;
import org.mindswap.owls.process.ConditionList;
import org.mindswap.owls.process.EffectList;
import org.mindswap.owls.process.InputList;
import org.mindswap.owls.process.OutputList;
import org.mindswap.owls.process.Parameter;
import org.mindswap.owls.process.Process;
import org.mindswap.owls.process.ValueMap;
import org.mindswap.owls.profile.Profile;
import org.mindswap.owls.service.Service;

import com.hp.hpl.jena.rdf.model.Resource;

/**
 * @author Evren Sirin
 *
 */
public abstract class ProcessImpl extends ProcessComponentImpl implements Process {
	Service service;
	
	InputList inputs;
	OutputList outputs;
	ConditionList preconditions;
	EffectList effects;
	
	ValueMap defaultValues;

	/**
	 * @param resource
	 */
	public ProcessImpl(Resource resource) {
		super(resource);
		
		inputs = OWLSFactory.createInputList();
		outputs = OWLSFactory.createOutputList();
		preconditions = OWLSFactory.createConditionList();
		effects = OWLSFactory.createEffectList();	
		
		defaultValues = OWLSFactory.createValueMap();	
	}

	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getService()
	 */
	public Service getService() {
		return service;
	}

	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getProfile()
	 */
	public Profile getProfile() {
		return service.getProfile();
	}

	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getInputs()
	 */
	public InputList getInputs() {
		return inputs;
	}

	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getOutputs()
	 */
	public OutputList getOutputs() {
		return outputs;
	}


	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getParameter(java.net.URI)
	 */
	public Parameter getParameter(URI parameterURI) {
		Parameter p = inputs.getParameter(parameterURI);
		
		if(p == null)
			p = outputs.getParameter(parameterURI);
		
		return p;
	}
	
	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getPreconditions()
	 */
	public ConditionList getPreconditions() {
		return preconditions;
	}

	/* (non-Javadoc)
	 * @see org.mindswap.owls.process.Process#getValueMap()
	 */
	public ValueMap getDefaultValues() {
		return defaultValues;
	}
	
	/**
	 * @return
	 */
	public EffectList getEffects() {
		return effects;
	}

	/**
	 * @param service
	 */
	public void setService(Service service) {
		this.service = service;
	}
	
	public String debugString() {
		String str = getLabel() + "  " + getURI() + "\n";
		for(int i = 0; i < inputs.size(); i++)
			str += inputs.inputAt(i).debugString() + "\n";
		for(int i = 0; i < outputs.size(); i++)
			str += outputs.outputAt(i).debugString() + "\n";
		
		return str;
	}
}

⌨️ 快捷键说明

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