blob: eea746c2e0950d3221d16bd9ef27d6f938423df9 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
package com.sun.star.script.framework.container;
import java.util.Map;
import java.util.HashMap;
public class ScriptEntry implements Cloneable {
private String language;
private String languagename;
private String location;
private String logicalname = "";
private String description = "";
private Map languagedepprops;
public ScriptEntry(String language, String languagename,
String logicalname, String location) {
this.language = language;
this.languagename = languagename;
// logical name/ function name concept
// needs to be reworked, in meantime
// function name ( from xml ) will be used
// as logical name also
this.logicalname = languagename;
this.location = location;
this.languagedepprops = new HashMap();
}
public ScriptEntry(ScriptEntry entry)
{
this.language = entry.language;
this.languagename = entry.languagename;
this.logicalname = entry.languagename;
this.location = entry.location;
this.languagedepprops = entry.languagedepprops;
this.description = entry.description;
}
public ScriptEntry(String language, String languagename,
String logicalname, String location, Map languagedepprops) {
this( language, languagename, logicalname, location );
this.languagedepprops = languagedepprops;
}
public ScriptEntry(String language, String languagename,
String logicalname, String location,
Map languagedepprops, String description) {
this( language, languagename, logicalname, location );
this.languagedepprops = languagedepprops;
this.description = description;
}
public ScriptEntry(String languagename, String location) {
this("Java", languagename, languagename, location);
}
public Object clone() throws CloneNotSupportedException {
return super.clone();
}
public boolean equals(ScriptEntry other) {
if (language.equals(other.getLanguage()) &&
languagename.equals(other.getLanguageName()) &&
logicalname.equals(other.getLogicalName()) &&
languagedepprops.equals(other.getLanguageProperties()) &&
location.equals(other.getLocation()))
return true;
return false;
}
public Map getLanguageProperties()
{
return languagedepprops;
}
public String getLanguageName() {
return languagename;
}
public String getLogicalName() {
return logicalname;
}
public void setLogicalName(String name) {
logicalname = name;
}
public String getLanguage() {
return language;
}
public String getLocation() {
return location;
}
public String getDescription() {
return description;
}
public String toString() {
return "\nLogicalName = " + logicalname + "\nLanguageName = " + languagename + "\nLocation = " + location + "\nLanguaguageProperties = " + languagedepprops;
}
}