Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Eclipse Projects
Eclipse Titan
titan.EclipsePlug-ins
Commits
46ab14c5
Commit
46ab14c5
authored
Mar 07, 2016
by
Elemer Lelik
Browse files
Sync with 5.4.3
parent
894a4122
Changes
313
Expand all
Hide whitespace changes
Inline
Side-by-side
Eclipse_Designer_userguide.doc
View file @
46ab14c5
No preview for this file type
TITAN_Designer_feature/feature.xml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
@@ -10,37 +10,44 @@
<feature
id=
"TITAN_Designer"
label=
"TITAN_Designer_Feature"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
provider-name=
"Eclipse Titan Project"
>
<description
url=
"http://ttcn.ericsson.se/download/update_site/releasenotes.pdf"
>
CRL 113 200/5 R4
C
(5.4.pl
2
) version of the TITAN Designer plug-in.
CRL 113 200/5 R4
D
(5.4.pl
3
) version of the TITAN Designer plug-in.
</description>
<copyright>
/*******************************************************************************
* Copyright (c) 2000-201
5
Ericsson Telecom AB
* Copyright (c) 2000-201
6
Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* are made available under the terms of the Eclipse Public License
v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Zoltan Janos Szabo (Ericsson) - initial architecture design and implementation
* Zoltan Janos Szabo (Ericsson) - initial architecture design
and implementation
* Roland Gecse (Ericsson) - initial architecture design
* Akos Cserveni (Ericsson) - Basic AST in compiler, semantic checking
* Akos Cserveni (Ericsson) - Basic AST in compiler, semantic
checking
* Gabor Szalai (Ericsson) – RAW and TEXT codecs
* Matyas Forstner (Ericsson) - ASN.1 extension of the compiler and BER/CER/DER codecs
* Kristof Szabados (Ericsson) - Eclipse Designer, Executor, Titanium UIs
* Matyas Forstner (Ericsson) - ASN.1 extension of the compiler
and BER/CER/DER codecs
* Kristof Szabados (Ericsson) - Eclipse Designer, Executor,
Titanium UIs
* Szabolcs Beres (Ericsson) - Eclipse LogViewer
* Ferenc Kovacs (Ericsson) – log interfaces, big number support, subtype checking
* Ferenc Kovacs (Ericsson) – log interfaces, big number support,
subtype checking
* Csaba Raduly (Ericsson) – ASN.1 additions, XML encoder/decoder
* Adam Delic (Ericsson) – template restrictions, try and catch, support of pre-processor directives in Eclipse
* Adam Delic (Ericsson) – template restrictions, try and
catch, support of pre-processor directives in Eclipse
* Krisztian Pandi (Ericsson) – import of imports
* Peter Dimitrov (Ericsson)- maintenance
* Balazs Andor Zalanyi (Ericsson) – code splitting
* Gabor Szalai (Ericsson) – RAW encoding/decoding
* Jeno Attila Balasko (Ericsson) – tests
* Jeno Attila Balasko (Ericsson) – tests
, maintenance
* Csaba Feher (Ericsson) – epoll support
* Tamas Buti (Ericsson)- maintenance
* Szabolcs Beres (Ericsson) - Eclipse LogViever
...
...
@@ -155,21 +162,21 @@ This Agreement is governed by the laws of the State of New York and the intellec
id=
"org.eclipse.titan.designer"
download-size=
"3841"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.help"
download-size=
"10546"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.common"
download-size=
"532"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
</feature>
TITAN_Executor_feature/feature.xml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
@@ -10,17 +10,17 @@
<feature
id=
"TITAN_Executor"
label=
"TITAN_Executor_Feature"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
provider-name=
"Eclipse Titan Project"
>
<description
url=
"http://ttcn.ericsson.se/download/update_site/releasenotes.pdf"
>
CRL 113 200/5 R4
C
(5.4.pl
2
) version of the TITAN Executor
CRL 113 200/5 R4
D
(5.4.pl
3
) version of the TITAN Executor
plug-in.
</description>
<copyright>
/*******************************************************************************
* Copyright (c) 2000-201
5
Ericsson Telecom AB
* Copyright (c) 2000-201
6
Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License
v1.0
...
...
@@ -138,6 +138,7 @@ This Agreement is governed by the laws of the State of New York and the intellec
</url>
<requires>
<import
feature=
"TITAN_Designer"
version=
"5.4.3"
match=
"greaterOrEqual"
/>
<import
plugin=
"org.eclipse.ui"
/>
<import
plugin=
"org.eclipse.core.runtime"
/>
<import
plugin=
"org.eclipse.debug.core"
/>
...
...
@@ -149,28 +150,27 @@ This Agreement is governed by the laws of the State of New York and the intellec
<import
plugin=
"org.eclipse.core.expressions"
/>
<import
plugin=
"org.eclipse.core.filesystem"
/>
<import
plugin=
"org.eclipse.ui.ide"
/>
<import
feature=
"TITAN_Designer"
version=
"5.4.2"
match=
"greaterOrEqual"
/>
</requires>
<plugin
id=
"org.eclipse.titan.executor"
download-size=
"720"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.help"
download-size=
"10546"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.common"
download-size=
"532"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
</feature>
TITAN_Log_Viewer_Feature/TITAN_Log_Viewer_Feature.iml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
TITAN_Log_Viewer_Feature/feature.xml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
@@ -10,16 +10,16 @@
<feature
id=
"TITAN_Log_Viewer"
label=
"TITAN Log Viewer"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
provider-name=
"Eclipse Titan Project"
>
<description
url=
"http://ttcn.ericsson.se/download/update_site/releasenotes.pdf"
>
CRL 113 200/5 R4
C
(5.4.pl
2
) version of the TITAN Log Viewer plug-in.
CRL 113 200/5 R4
D
(5.4.pl
3
) version of the TITAN Log Viewer plug-in.
</description>
<copyright>
/*******************************************************************************
* Copyright (c) 2000-201
5
Ericsson Telecom AB
* Copyright (c) 2000-201
6
Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
...
...
@@ -144,20 +144,20 @@ This Agreement is governed by the laws of the State of New York and the intellec
id=
"org.eclipse.titan.log.viewer"
download-size=
"0"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.common"
download-size=
"0"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.help"
download-size=
"0"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
/>
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
/>
</feature>
Titanium_feature/Titanium_feature.iml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
Titanium_feature/feature.xml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
...
...
@@ -10,17 +10,17 @@
<feature
id=
"Titanium"
label=
"Titanium_Feature"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
provider-name=
"Eclipse Titan Project"
>
<description
url=
"http://ttcn.ericsson.se/download/update_site/releasenotes.pdf"
>
CRL 113 200/5 R4
C
(5.4.pl
2
) version of the Titanium
CRL 113 200/5 R4
D
(5.4.pl
3
) version of the Titanium
plug-in.
</description>
<copyright>
/*******************************************************************************
* Copyright (c) 2000-201
5
Ericsson Telecom AB
* Copyright (c) 2000-201
6
Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License
v1.0
...
...
@@ -167,28 +167,28 @@ This Agreement is governed by the laws of the State of New York and the intellec
id=
"org.eclipse.titanium"
download-size=
"3841"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.designer"
download-size=
"5894"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.help"
download-size=
"10546"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
<plugin
id=
"org.eclipse.titan.common"
download-size=
"532"
install-size=
"0"
version=
"5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100"
version=
"5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100"
unpack=
"false"
/>
</feature>
automatic_build/build_config.xml
View file @
46ab14c5
...
...
@@ -10,7 +10,7 @@
<project
basedir=
"."
name=
"config"
>
<!-- The qualifier of the features -->
<property
name=
"version"
value=
"5.4.
2
.CRL_113_200_5_R4
C
"
/>
<property
name=
"version"
value=
"5.4.
3
.CRL_113_200_5_R4
D
"
/>
<tstamp/>
<property
name=
"timestamp"
value=
"${DSTAMP}-${TSTAMP}"
/>
<property
name=
"version.qualifier"
value=
"${version}_${timestamp}"
/>
...
...
org.eclipse.titan.common/META-INF/MANIFEST.MF
View file @
46ab14c5
...
...
@@ -4,7 +4,7 @@ Created-By: 23.6-b04 (Oracle Corporation)
Bundle-ManifestVersion: 2
Bundle-Name: Common TITAN on Eclipse Plug-in
Bundle-SymbolicName: org.eclipse.titan.common;singleton:=true
Bundle-Version: 5.4.
2
.CRL_113_200_5_R4
C
_20160
105
-1100
Bundle-Version: 5.4.
3
.CRL_113_200_5_R4
D
_20160
301
-1100
Bundle-Activator: org.eclipse.titan.common.Activator
Bundle-Vendor: Eclipse Titan Project
Require-Bundle: org.eclipse.ui,
...
...
org.eclipse.titan.common/plugin.xml
View file @
46ab14c5
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000-201
5
Ericsson Telecom AB
Copyright (c) 2000-201
6
Ericsson Telecom AB
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
-->
<?eclipse version="
3.2
"?>
<?eclipse version="
4.4
"?>
<plugin>
<extension
point=
"org.eclipse.ui.commands"
><command
defaultHandler=
"org.eclipse.titan.common.actions.FormatLog"
id=
"org.eclipse.titan.common.actions.FormatLog"
name=
"FormatLog"
/></extension>
<extension
point=
"org.eclipse.ui.commands"
><command
defaultHandler=
"org.eclipse.titan.common.actions.MergeLog"
id=
"org.eclipse.titan.common.actions.MergeLog"
name=
"FormatLog"
/></extension>
<extension
point=
"org.eclipse.ui.menus"
>
<menuContribution
locationURI=
"popup:org.eclipse.ui.popup.any?after=additions"
>
<menu
label=
"Titan log"
>
<command
commandId=
"org.eclipse.titan.common.actions.FormatLog"
label=
"Format log"
>
<visibleWhen
checkEnabled=
"false"
>
<with
variable=
"selection"
>
<iterate
operator=
"or"
>
<adapt
type=
"org.eclipse.core.resources.IResource"
>
<test
property=
"org.eclipse.core.resources.name"
value=
"*.log"
/>
</adapt>
</iterate>
</with>
</visibleWhen>
</command>
<command
commandId=
"org.eclipse.titan.common.actions.MergeLog"
label=
"Merge log"
>
<visibleWhen
checkEnabled=
"false"
>
<with
variable=
"selection"
>
<iterate
operator=
"or"
>
<adapt
type=
"org.eclipse.core.resources.IResource"
>
<test
property=
"org.eclipse.core.resources.name"
value=
"*.log"
/>
</adapt>
</iterate>
</with>
</visibleWhen>
<extension
point=
"org.eclipse.ui.commands"
>
<command
defaultHandler=
"org.eclipse.titan.common.actions.FormatLog"
id=
"org.eclipse.titan.common.actions.FormatLog"
name=
"FormatLog"
/>
</extension>
<extension
point=
"org.eclipse.ui.commands"
>
<command
defaultHandler=
"org.eclipse.titan.common.actions.MergeLog"
id=
"org.eclipse.titan.common.actions.MergeLog"
name=
"FormatLog"
/>
</extension>
<extension
point=
"org.eclipse.ui.menus"
>
<menuContribution
locationURI=
"popup:org.eclipse.ui.popup.any?after=additions"
>
<menu
label=
"Titan log"
>
<command
commandId=
"org.eclipse.titan.common.actions.FormatLog"
label=
"Format log"
>
<visibleWhen
checkEnabled=
"false"
>
<with
variable=
"selection"
>
<iterate
operator=
"or"
>
<adapt
type=
"org.eclipse.core.resources.IResource"
>
<test
property=
"org.eclipse.core.resources.name"
value=
"*.log"
/>
</adapt>
</iterate>
</with>
</visibleWhen>
</command>
<command
commandId=
"org.eclipse.titan.common.actions.MergeLog"
label=
"Merge log"
>
<visibleWhen
checkEnabled=
"false"
>
<with
variable=
"selection"
>
<iterate
operator=
"or"
>
<adapt
type=
"org.eclipse.core.resources.IResource"
>
<test
property=
"org.eclipse.core.resources.name"
value=
"*.log"
/>
</adapt>
</iterate>
</with>
</visibleWhen>
</command>
</menu>
</command>
</menu>
</menuContribution>
</extension>
</extension>
<extension
point=
"org.eclipse.core.runtime.preferences"
>
<initializer
class=
"org.eclipse.titan.common.preferences.PreferenceInitializer"
/>
<extension
point=
"org.eclipse.core.runtime.preferences"
>
<initializer
class=
"org.eclipse.titan.common.preferences.PreferenceInitializer"
/>
</extension>
<extension
point=
"org.eclipse.ui.preferencePages"
>
<page
id=
"org.eclipse.titan.common.preferences.pages.TITANCommonPreferencePage"
class=
"org.eclipse.titan.common.preferences.pages.TITANCommonPreferencePage"
name=
"TITAN Common Preferences"
/>
name=
"TITAN Common Preferences"
/>
</extension>
</plugin>
org.eclipse.titan.common/src/org/eclipse/titan/common/actions/MergeLog.java
View file @
46ab14c5
...
...
@@ -36,7 +36,6 @@ import org.eclipse.jface.viewers.ISelection;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.widgets.Display
;
import
org.eclipse.swt.widgets.FileDialog
;
import
org.eclipse.swt.widgets.Shell
;
import
org.eclipse.titan.common.Activator
;
import
org.eclipse.titan.common.graphics.ImageCache
;
import
org.eclipse.titan.common.log.merge.LogMerger
;
...
...
@@ -123,7 +122,7 @@ public final class MergeLog extends AbstractHandler implements IWorkbenchWindowA
* target of the merge.
*/
private
void
displayOutputSelectionDialog
()
{
final
FileDialog
dialog
=
new
FileDialog
(
n
ew
Shell
(
Display
.
getDefault
())
,
SWT
.
SAVE
);
final
FileDialog
dialog
=
new
FileDialog
(
n
ull
,
SWT
.
SAVE
);
if
(
staticOutput
!=
null
)
{
dialog
.
setFileName
(
staticOutput
.
getName
());
dialog
.
setFilterPath
(
staticOutput
.
getParent
());
...
...
@@ -212,7 +211,7 @@ public final class MergeLog extends AbstractHandler implements IWorkbenchWindowA
"Overwrite"
};
MessageDialogWithToggle
msgDialog
=
new
MessageDialogWithToggle
(
n
ew
Shell
(
Display
.
getDefault
())
,
n
ull
,
"File already exists"
,
null
,
"An error occured during log file merging. The file '"
...
...
org.eclipse.titan.common/src/org/eclipse/titan/common/logging/ErrorReporter.java
View file @
46ab14c5
...
...
@@ -13,7 +13,6 @@ import org.eclipse.core.runtime.Platform;
import
org.eclipse.core.runtime.Status
;
import
org.eclipse.jface.dialogs.MessageDialog
;
import
org.eclipse.swt.widgets.Display
;
import
org.eclipse.swt.widgets.Shell
;
import
org.eclipse.titan.common.product.ProductConstants
;
import
org.eclipse.ui.IEditorPart
;
...
...
@@ -170,7 +169,7 @@ public final class ErrorReporter {
Display
.
getDefault
().
asyncExec
(
new
Runnable
()
{
@Override
public
void
run
()
{
MessageDialog
.
openError
(
n
ew
Shell
(
Display
.
getDefault
())
,
title
,
message
);
//$NON-NLS-1$
MessageDialog
.
openError
(
n
ull
,
title
,
message
);
//$NON-NLS-1$
}
});
}
...
...
@@ -184,7 +183,7 @@ public final class ErrorReporter {
Display
.
getDefault
().
asyncExec
(
new
Runnable
()
{
@Override
public
void
run
()
{
MessageDialog
.
openWarning
(
n
ew
Shell
(
Display
.
getDefault
())
,
title
,
message
);
MessageDialog
.
openWarning
(
n
ull
,
title
,
message
);
}
});
}
...
...
org.eclipse.titan.common/src/org/eclipse/titan/common/parsers/LocationAST.java
View file @
46ab14c5
...
...
@@ -46,8 +46,7 @@ public class LocationAST {
sb
.
append
(
""
+
mRule
.
stop
+
", "
);
sb
.
append
(
""
+
mRule
.
getChildCount
()
+
", "
);
sb
.
append
(
mRule
.
getText
()
+
"}"
);
}
else
{
}
else
{
sb
.
append
(
"null"
);
}
sb
.
append
(
", "
);
...
...
org.eclipse.titan.common/src/org/eclipse/titan/common/parsers/TitanListener.java
View file @
46ab14c5
...
...
@@ -23,7 +23,7 @@ public class TitanListener extends BaseErrorListener {
public
TitanListener
()
{
this
.
errorsStored
=
new
ArrayList
<
SyntacticErrorStorage
>();
}
public
TitanListener
(
Array
List
<
SyntacticErrorStorage
>
storage
)
{
public
TitanListener
(
List
<
SyntacticErrorStorage
>
storage
)
{
this
.
errorsStored
=
storage
;
}
...
...
org.eclipse.titan.common/src/org/eclipse/titan/common/parsers/cfg/CFGNumber.java
View file @
46ab14c5
...
...
@@ -11,13 +11,18 @@ import java.math.BigInteger;
/**
* @author Kristof Szabados
* */
* @author Arpad Lovassy
*/
public
final
class
CFGNumber
{
private
static
final
String
DIV_BY_ZERO
=
"Division by zero"
;
private
boolean
isFloatNumber
;
private
float
floatNumber
;
private
BigInteger
intNumber
;
/**
* Constructor
* @param text the string representation of the number. The constructor will decide if it will be stored as float or integer
*/
public
CFGNumber
(
final
String
text
)
{
try
{
floatNumber
=
Float
.
parseFloat
(
text
);
...
...
@@ -33,6 +38,9 @@ public final class CFGNumber {
return
isFloatNumber
;
}
/**
* @return this + num
*/
public
void
add
(
final
CFGNumber
num
)
{
if
(
isFloatNumber
)
{
if
(
num
.
isFloatNumber
)
{
...
...
@@ -50,6 +58,29 @@ public final class CFGNumber {
}
}
/**
* @return this - num
*/
public
void
sub
(
final
CFGNumber
num
)
{
if
(
isFloatNumber
)
{
if
(
num
.
isFloatNumber
)
{
floatNumber
-=
num
.
floatNumber
;
}
else
{
floatNumber
-=
num
.
intNumber
.
floatValue
();
}
}
else
{
if
(
num
.
isFloatNumber
)
{
isFloatNumber
=
true
;
floatNumber
=
intNumber
.
floatValue
()
-
num
.
floatNumber
;
}
else
{
intNumber
=
intNumber
.
subtract
(
num
.
intNumber
);
}
}
}
/**
* @return this * num
*/
public
void
mul
(
final
int
num
)
{
if
(
isFloatNumber
)
{
floatNumber
*=
num
;
...
...
@@ -58,6 +89,9 @@ public final class CFGNumber {
}
}
/**
* @return this * num
*/
public
void
mul
(
final
CFGNumber
num
)
{
if
(
isFloatNumber
)
{
if
(
num
.
isFloatNumber
)
{
...
...
@@ -75,6 +109,10 @@ public final class CFGNumber {
}
}
/**
* @return this / num
* @throws ArithmeticException if num == 0
*/
public
void
div
(
final
CFGNumber
num
)
throws
ArithmeticException
{
if
(
isFloatNumber
)
{
if
(
num
.
isFloatNumber
)
{
...
...
@@ -108,7 +146,7 @@ public final class CFGNumber {
public
String
toString
()
{
if
(
isFloatNumber
)
{
// "Infinity" is not a valid value in a configuration file.
if
(
(
floatNumber
==
Float
.
NEGATIVE_INFINITY
)
||
(
floatNumber
==
Float
.
POSITIVE_INFINITY
))
{
if
(
Float
.
isInfinite
(
floatNumber
))
{
return
"0.0"
;
}
return
Float
.
toString
(
floatNumber
);
...
...
@@ -116,4 +154,26 @@ public final class CFGNumber {
return
intNumber
.
toString
();
}
/**
* @return float value of the number
*/
public
Double
getValue
()
{
if
(
isFloatNumber
)
{
return
new
Double
(
floatNumber
);
}
else
{
return
intNumber
.
doubleValue
();
}
}
/**
* @return integer value, or null if number is float
*/
public
Integer
getIntegerValue
()
{
if
(
isFloatNumber
)
{
return
null
;
}
else
{