Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
P
proview
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Esteban Blanc
proview
Commits
44956b4e
Commit
44956b4e
authored
May 20, 2010
by
Claes Sjofors
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Java classgraphs, functionallity for method buttons added
parent
029e26bb
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
686 additions
and
320 deletions
+686
-320
java/jpwr/jop/src/GeDynInvisible.java
java/jpwr/jop/src/GeDynInvisible.java
+10
-4
java/jpwr/jop/src/Jop.java
java/jpwr/jop/src/Jop.java
+2
-2
java/jpwr/jop/src/JopMethods.java
java/jpwr/jop/src/JopMethods.java
+447
-0
java/jpwr/jop/src/JopMethodsMenu.java
java/jpwr/jop/src/JopMethodsMenu.java
+39
-288
java/jpwr/jop/src/JopSessionIfc.java
java/jpwr/jop/src/JopSessionIfc.java
+1
-1
java/jpwr/jop/src/JopSessionRep.java
java/jpwr/jop/src/JopSessionRep.java
+12
-6
java/jpwr/jop/src/JopSpider.java
java/jpwr/jop/src/JopSpider.java
+174
-19
java/jpwr/jop/src/JopUtility.java
java/jpwr/jop/src/JopUtility.java
+1
-0
No files found.
java/jpwr/jop/src/GeDynInvisible.java
View file @
44956b4e
...
...
@@ -36,6 +36,7 @@ public class GeDynInvisible extends GeDynElem {
boolean
cmd
=
false
;
boolean
valueCmd
=
false
;
int
bitNum
;
String
command
;
public
GeDynInvisible
(
GeDyn
dyn
,
String
attribute
,
int
dimmed
)
{
super
(
dyn
,
GeDyn
.
mDynType_Invisible
,
GeDyn
.
mActionType_No
);
...
...
@@ -48,6 +49,7 @@ public class GeDynInvisible extends GeDynElem {
if
(
attrName
.
toLowerCase
().
startsWith
(
"$cmd("
))
{
cmd
=
true
;
valueCmd
=
false
;
command
=
attrName
.
substring
(
5
,
attrName
.
length
()-
1
);
}
else
{
GdhrRefObjectInfo
ret
=
dyn
.
en
.
gdh
.
refObjectInfo
(
attrName
);
...
...
@@ -85,10 +87,14 @@ public class GeDynInvisible extends GeDynElem {
public
void
scan
()
{
if
(
cmd
)
{
if
(
firstScan
)
{
if
(
dimmed
==
0
)
dyn
.
comp
.
setVisibility
(
Ge
.
VISIBILITY_INVISIBLE
);
else
dyn
.
comp
.
setVisibility
(
Ge
.
VISIBILITY_DIMMED
);
int
sts
=
Jop
.
executeCommand
(
dyn
.
session
,
command
);
System
.
out
.
println
(
"DynInvisible: "
+
command
+
", value: "
+
sts
);
if
(
sts
==
0
)
{
if
(
dimmed
==
0
)
dyn
.
comp
.
setVisibility
(
Ge
.
VISIBILITY_INVISIBLE
);
else
dyn
.
comp
.
setVisibility
(
Ge
.
VISIBILITY_DIMMED
);
}
firstScan
=
false
;
}
return
;
...
...
java/jpwr/jop/src/Jop.java
View file @
44956b4e
...
...
@@ -35,7 +35,7 @@ public class Jop {
public
static
final
int
BUTTON_ACTION_TOGGLE
=
2
;
public
static
final
int
BUTTON_ACTION_COMMAND
=
3
;
public
static
void
executeCommand
(
JopSession
session
,
String
command
)
{
JopSpider
.
command
(
session
,
command
);
public
static
int
executeCommand
(
JopSession
session
,
String
command
)
{
return
JopSpider
.
command
(
session
,
command
);
}
}
java/jpwr/jop/src/JopMethods.java
0 → 100644
View file @
44956b4e
/*
* Proview $Id$
* Copyright (C) 2005 SSAB Oxelsund AB.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation, either version 2 of
* the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with the program, if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
package
jpwr.jop
;
import
jpwr.rt.*
;
import
java.awt.*
;
import
javax.swing.*
;
import
javax.swing.event.*
;
import
java.awt.event.*
;
public
class
JopMethods
{
JopSession
session
;
Gdh
gdh
;
String
object
;
PwrtAttrRef
aref
;
int
classid
;
int
utility
;
public
JopMethods
(
JopSession
session
,
PwrtAttrRef
aref
,
String
object
,
int
classid
,
int
utility
)
{
this
.
session
=
session
;
gdh
=
session
.
getEngine
().
gdh
;
this
.
object
=
object
;
this
.
utility
=
utility
;
this
.
aref
=
aref
;
this
.
classid
=
classid
;
}
public
boolean
callFilterMethod
(
String
method
)
{
if
(
method
.
equals
(
"RtNavigator"
))
{
return
rtNavigatorFilter
();
}
else
if
(
method
.
equals
(
"Open Plc"
))
{
return
openTraceFilter
();
}
else
if
(
method
.
equals
(
"Graph"
))
{
return
openGraphFilter
();
}
else
if
(
method
.
equals
(
"Help"
))
{
return
helpFilter
();
}
else
if
(
method
.
equals
(
"DataSheet"
))
{
return
dataSheetFilter
();
}
else
if
(
method
.
equals
(
"Crossreferences"
))
{
return
openCrossrefFilter
();
}
else
if
(
method
.
equals
(
"Help Class"
))
{
return
helpClassFilter
();
}
else
if
(
method
.
equals
(
"CircuitDiagram"
))
{
return
circuitDiagramFilter
();
}
else
if
(
method
.
equals
(
"ObjectGraph"
))
{
return
openObjectGraphFilter
();
}
else
if
(
method
.
equals
(
"Hist Event..."
))
{
return
histEventFilter
();
}
else
if
(
method
.
equals
(
"Simulate"
))
{
return
simulateFilter
();
}
else
if
(
method
.
equals
(
"Open Object"
))
{
return
false
;
// NYI
}
else
if
(
method
.
equals
(
"Trend"
))
{
return
false
;
// NYI
}
else
if
(
method
.
equals
(
"Fast"
))
{
return
false
;
// NYI
}
else
if
(
method
.
equals
(
"Photo"
))
{
return
false
;
// NYI
}
else
if
(
method
.
equals
(
"Note"
))
{
return
false
;
// NYI
}
else
if
(
method
.
equals
(
"Block Events..."
))
{
return
false
;
// NYI
}
return
false
;
}
public
void
callMethod
(
String
method
)
{
if
(
method
.
equals
(
"RtNavigator"
))
{
rtNavigator
();
}
else
if
(
method
.
equals
(
"Open Plc"
))
{
openTrace
();
}
else
if
(
method
.
equals
(
"Graph"
))
{
openGraph
();
}
else
if
(
method
.
equals
(
"Help"
))
{
help
();
}
else
if
(
method
.
equals
(
"DataSheet"
))
{
dataSheet
();
}
else
if
(
method
.
equals
(
"Crossreferences"
))
{
openCrossref
();
}
else
if
(
method
.
equals
(
"Class Help"
))
{
helpClass
();
}
else
if
(
method
.
equals
(
"CircuitDiagram"
))
{
circuitDiagram
();
}
else
if
(
method
.
equals
(
"ObjectGraph"
))
{
openObjectGraph
();
}
else
if
(
method
.
equals
(
"Hist Event..."
))
{
histEvent
();
}
else
if
(
method
.
equals
(
"Simulate"
))
{
simulate
();
}
else
if
(
method
.
equals
(
"Open Object"
))
{
// NYI
}
else
if
(
method
.
equals
(
"Trend"
))
{
// NYI
}
else
if
(
method
.
equals
(
"Fast"
))
{
// NYI
}
else
if
(
method
.
equals
(
"Photo"
))
{
// NYI
}
else
if
(
method
.
equals
(
"Note"
))
{
// NYI
}
else
if
(
method
.
equals
(
"Block Events..."
))
{
// NYI
}
}
//
// Methods and filter metods for object
//
public
boolean
rtNavigatorFilter
()
{
if
(
utility
==
JopUtility
.
NAVIGATOR
)
return
false
;
return
true
;
}
public
void
rtNavigator
()
{
session
.
openNavigator
(
aref
.
getObjid
());
}
public
boolean
openCrossrefFilter
()
{
return
true
;
}
public
void
openCrossref
()
{
session
.
openCrrFrame
(
object
);
}
public
boolean
openTraceFilter
()
{
if
(
utility
==
JopUtility
.
TRACE
)
return
false
;
if
(
classid
==
Pwrb
.
cClass_plc
||
classid
==
Pwrb
.
cClass_windowplc
||
classid
==
Pwrb
.
cClass_windowsubstep
||
classid
==
Pwrb
.
cClass_windoworderact
||
classid
==
Pwrb
.
cClass_windowplc
)
return
true
;
CdhrObjid
pret
=
gdh
.
getParent
(
aref
.
getObjid
());
if
(
pret
.
evenSts
())
return
false
;
CdhrClassId
cret
=
gdh
.
getObjectClass
(
pret
.
objid
);
if
(
cret
.
evenSts
())
return
false
;
if
(
cret
.
classId
==
Pwrb
.
cClass_windowplc
||
cret
.
classId
==
Pwrb
.
cClass_windowsubstep
||
cret
.
classId
==
Pwrb
.
cClass_windoworderact
||
cret
.
classId
==
Pwrb
.
cClass_windowplc
)
return
true
;
return
false
;
}
public
void
openTrace
()
{
if
(
classid
==
Pwrb
.
cClass_windowplc
||
classid
==
Pwrb
.
cClass_windowsubstep
||
classid
==
Pwrb
.
cClass_windoworderact
||
classid
==
Pwrb
.
cClass_windowplc
)
{
session
.
openFlowFrame
(
aref
.
getObjid
(),
null
);
}
else
if
(
classid
==
Pwrb
.
cClass_plc
)
{
// Open child
CdhrObjid
child
=
gdh
.
getChild
(
aref
.
getObjid
());
if
(
child
.
evenSts
())
return
;
CdhrClassId
cret
=
gdh
.
getObjectClass
(
child
.
objid
);
if
(
cret
.
evenSts
())
return
;
if
(
cret
.
classId
==
Pwrb
.
cClass_windowplc
||
cret
.
classId
==
Pwrb
.
cClass_windowsubstep
||
cret
.
classId
==
Pwrb
.
cClass_windoworderact
||
cret
.
classId
==
Pwrb
.
cClass_windowplc
)
{
session
.
openFlowFrame
(
child
.
objid
,
null
);
}
}
else
{
// Open parent window and center object
CdhrObjid
parent
=
gdh
.
getParent
(
aref
.
getObjid
());
if
(
parent
.
evenSts
())
return
;
int
idx
=
object
.
lastIndexOf
(
'-'
);
if
(
idx
==
-
1
)
return
;
String
name
=
object
.
substring
(
idx
+
1
);
session
.
openFlowFrame
(
parent
.
objid
,
name
);
}
}
public
boolean
openGraphFilter
()
{
if
(
utility
==
JopUtility
.
GRAPH
)
{
// Check caller name...
}
String
attr
=
object
+
".DefGraph"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
false
;
if
(
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
openGraph
()
{
String
attr
=
object
+
".DefGraph"
;
CdhrString
xttgraph
=
gdh
.
getObjectInfoString
(
attr
);
if
(
xttgraph
.
evenSts
())
return
;
attr
=
xttgraph
.
str
+
".Action"
;
CdhrString
actionRet
=
gdh
.
getObjectInfoString
(
attr
);
if
(
actionRet
.
evenSts
())
return
;
int
idx
=
actionRet
.
str
.
lastIndexOf
(
'.'
);
String
action
;
if
(
idx
!=
-
1
)
action
=
actionRet
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
actionRet
.
str
.
substring
(
1
,
idx
);
else
action
=
actionRet
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
actionRet
.
str
.
substring
(
1
);
String
instance
=
null
;
attr
=
xttgraph
.
str
+
".Object"
;
CdhrString
instanceRet
=
gdh
.
getObjectInfoString
(
attr
);
if
(
instanceRet
.
oddSts
()
&&
!
instanceRet
.
str
.
equals
(
""
))
instance
=
instanceRet
.
str
;
session
.
openGraphFrame
(
action
,
instance
,
false
,
false
);
}
public
boolean
helpFilter
()
{
String
attr
=
object
+
".HelpTopic"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
help
()
{
String
attr
=
object
+
".HelpTopic"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"help "
+
sret
.
str
;
session
.
executeCommand
(
cmd
);
}
public
boolean
dataSheetFilter
()
{
String
attr
=
object
+
".DataSheet"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
dataSheet
()
{
String
attr
=
object
+
".DataSheet"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"open url \""
+
sret
.
str
+
"\""
;
System
.
out
.
println
(
"dataSheet: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
circuitDiagramFilter
()
{
String
attr
=
object
+
".CircuitDiagram"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
circuitDiagram
()
{
String
attr
=
object
+
".CircuitDiagram"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"open url \""
+
sret
.
str
+
"\""
;
System
.
out
.
println
(
"circuitDiagram: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
helpClassFilter
()
{
return
true
;
}
public
void
helpClass
()
{
CdhrObjid
oret
=
gdh
.
classIdToObjid
(
classid
);
if
(
oret
.
evenSts
())
return
;
CdhrString
sret
=
gdh
.
objidToName
(
oret
.
objid
,
Cdh
.
mName_volumeStrict
);
if
(
sret
.
evenSts
())
return
;
int
idx
=
sret
.
str
.
lastIndexOf
(
":"
);
if
(
idx
==
-
1
)
return
;
String
volume
=
sret
.
str
.
substring
(
0
,
idx
);
idx
=
sret
.
str
.
lastIndexOf
(
"-"
);
if
(
idx
==
-
1
)
return
;
String
className
=
sret
.
str
.
substring
(
idx
+
1
);
String
url
=
volume
.
toLowerCase
()
+
"_"
+
className
.
toLowerCase
()
+
".html"
;
String
cmd
=
"open url \""
+
url
+
"\""
;
session
.
executeCommand
(
cmd
);
}
public
boolean
openObjectGraphFilter
()
{
if
(
classid
==
Pwrs
.
cClass_Node
)
return
true
;
CdhrObjid
coid
=
gdh
.
classIdToObjid
(
classid
);
if
(
coid
.
evenSts
())
return
false
;
CdhrString
sret
=
gdh
.
objidToName
(
coid
.
objid
,
Cdh
.
mName_object
);
if
(
sret
.
evenSts
())
return
false
;
String
name
;
if
(
coid
.
objid
.
vid
<
Cdh
.
cUserClassVolMin
||
(
coid
.
objid
.
vid
>=
Cdh
.
cManufactClassVolMin
&&
coid
.
objid
.
vid
<=
Cdh
.
cManufactClassVolMax
))
{
// Class is a base class, java classname starts with JopC_
if
(
coid
.
objid
.
vid
==
1
)
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
1
,
2
).
toUpperCase
()
+
sret
.
str
.
substring
(
2
).
toLowerCase
();
else
if
(
coid
.
objid
.
vid
==
10
)
{
if
(
sret
.
str
.
startsWith
(
"BaseFcPPO"
))
name
=
"jpwr.bcompfc.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
else
name
=
"jpwr.bcomp.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
}
else
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
}
else
// Java name equals class name
name
=
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
System
.
out
.
println
(
"classGraphFilter: "
+
name
+
", class: "
+
sret
.
str
);
try
{
Class
clazz
=
Class
.
forName
(
name
);
}
catch
(
Exception
e
)
{
return
false
;
}
return
true
;
}
public
void
openObjectGraph
()
{
String
cmd
=
"open graph /class /instance="
+
object
;
System
.
out
.
println
(
"classGraph: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
histEventFilter
(){
return
true
;
}
public
void
histEvent
(){
session
.
openSearch
(
object
);
}
public
boolean
simulateFilter
()
{
// Check IOSimulFlag in IOHandler object
CdhrObjid
hoid
=
gdh
.
getClassList
(
Pwrb
.
cClass_IOHandler
);
if
(
hoid
.
evenSts
())
return
false
;
CdhrString
sret
=
gdh
.
objidToName
(
hoid
.
objid
,
Cdh
.
mName_pathStrict
);
if
(
sret
.
evenSts
())
return
false
;
CdhrBoolean
fret
=
gdh
.
getObjectInfoBoolean
(
sret
.
str
+
".IOSimulFlag"
);
if
(
fret
.
evenSts
())
return
false
;
if
(
!
fret
.
value
)
return
false
;
// Check SimConnect attribute
sret
=
gdh
.
getObjectInfoString
(
object
+
".SimConnect"
);
if
(
sret
.
evenSts
())
return
false
;
return
true
;
}
public
void
simulate
()
{
// Get SimConnect attribute
CdhrString
sret
=
gdh
.
getObjectInfoString
(
object
+
".SimConnect"
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"open graph /class /instance="
+
sret
.
str
;
System
.
out
.
println
(
"simulateClassGraph: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
}
java/jpwr/jop/src/JopMethodsMenu.java
View file @
44956b4e
...
...
@@ -31,82 +31,85 @@ public class JopMethodsMenu implements ActionListener, PopupMenuListener,
JPopupMenu
popup
;
JopSession
session
;
Gdh
gdh
;
String
object
;
PwrtAttrRef
aref
;
int
classid
;
int
utility
;
JopMethods
methods
;
//String object;
//PwrtAttrRef aref;
//int classid;
//int utility;
JopMethodsMenu
(
JopSession
session
,
String
object
,
int
utility
,
Component
invoker
,
int
x
,
int
y
)
{
this
.
session
=
session
;
gdh
=
session
.
getEngine
().
gdh
;
this
.
object
=
object
;
this
.
utility
=
utility
;
if
(
object
==
null
)
return
;
CdhrAttrRef
oret
=
gdh
.
nameToAttrRef
(
object
);
if
(
oret
.
evenSts
())
return
;
aref
=
oret
.
aref
;
CdhrTypeId
cret
=
gdh
.
getAttrRefTid
(
aref
);
CdhrTypeId
cret
=
gdh
.
getAttrRefTid
(
oret
.
aref
);
if
(
cret
.
evenSts
())
return
;
classid
=
cret
.
typeId
;
System
.
out
.
println
(
"Menu object: "
+
object
+
" cid "
+
classid
);
System
.
out
.
println
(
"Menu object: "
+
object
+
" cid "
+
cret
.
typeId
);
methods
=
new
JopMethods
(
session
,
oret
.
aref
,
object
,
cret
.
typeId
,
utility
);
popup
=
new
JPopupMenu
();
JMenuItem
item
;
if
(
openGraphFilter
())
{
if
(
methods
.
openGraphFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Graph"
));
item
.
addActionListener
(
this
);
}
if
(
class
GraphFilter
())
{
if
(
methods
.
openObject
GraphFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"ObjectGraph"
));
item
.
addActionListener
(
this
);
}
if
(
helpFilter
())
{
if
(
methods
.
helpFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Help"
));
item
.
addActionListener
(
this
);
}
if
(
dataSheetFilter
())
{
if
(
methods
.
dataSheetFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"DataSheet"
));
item
.
addActionListener
(
this
);
}
if
(
n
avigatorFilter
())
{
if
(
methods
.
rtN
avigatorFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Navigator"
));
item
.
addActionListener
(
this
);
}
if
(
openTraceFilter
())
{
if
(
methods
.
openTraceFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Open Plc"
));
item
.
addActionListener
(
this
);
}
if
(
openCrossrefFilter
())
{
if
(
methods
.
openCrossrefFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Crossreferences"
));
item
.
addActionListener
(
this
);
}
if
(
classHelp
Filter
())
{
if
(
methods
.
helpClass
Filter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Class Help"
));
item
.
addActionListener
(
this
);
}
if
(
circuitDiagramFilter
())
{
if
(
methods
.
circuitDiagramFilter
())
{
popup
.
add
(
item
=
new
JMenuItem
(
"Circuit Diagram"
));
item
.
addActionListener
(
this
);
}
if
(
openSearchFilter
()){
popup
.
add
(
item
=
new
JMenuItem
(
"Hist Search"
));
if
(
methods
.
histEventFilter
()){
popup
.
add
(
item
=
new
JMenuItem
(
"Event Log"
));
item
.
addActionListener
(
this
);
}
if
(
methods
.
simulateFilter
()){
popup
.
add
(
item
=
new
JMenuItem
(
"Simulate"
));
item
.
addActionListener
(
this
);
}
popup
.
addPopupMenuListener
(
this
);
...
...
@@ -121,291 +124,39 @@ public class JopMethodsMenu implements ActionListener, PopupMenuListener,
public
void
actionPerformed
(
ActionEvent
event
)
{
if
(
event
.
getActionCommand
().
equals
(
"Navigator"
))
{
n
avigator
();
methods
.
rtN
avigator
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Open Plc"
))
{
openTrace
();
methods
.
openTrace
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Graph"
))
{
openGraph
();
methods
.
openGraph
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Help"
))
{
help
();
methods
.
help
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"DataSheet"
))
{
dataSheet
();
methods
.
dataSheet
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Crossreferences"
))
{
openCrossref
();
methods
.
openCrossref
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Class Help"
))
{
classHelp
();
methods
.
helpClass
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Circuit Diagram"
))
{
circuitDiagram
();
methods
.
circuitDiagram
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"ObjectGraph"
))
{
classGraph
();
}
else
if
(
event
.
getActionCommand
().
equals
(
"Hist Search"
))
{
openSearch
();
}
}
//
// Methods and filter metods for object
//
public
boolean
navigatorFilter
()
{
if
(
utility
==
JopUtility
.
NAVIGATOR
)
return
false
;
return
true
;
}
public
void
navigator
()
{
session
.
openNavigator
(
aref
.
getObjid
());
}
public
boolean
openCrossrefFilter
()
{
return
true
;
}
public
void
openCrossref
()
{
session
.
openCrrFrame
(
object
);
}
public
boolean
openTraceFilter
()
{
if
(
utility
==
JopUtility
.
TRACE
)
return
false
;
if
(
classid
==
Pwrb
.
cClass_plc
||
classid
==
Pwrb
.
cClass_windowplc
||
classid
==
Pwrb
.
cClass_windowsubstep
||
classid
==
Pwrb
.
cClass_windoworderact
||
classid
==
Pwrb
.
cClass_windowplc
)
return
true
;
CdhrObjid
pret
=
gdh
.
getParent
(
aref
.
getObjid
());
if
(
pret
.
evenSts
())
return
false
;
CdhrClassId
cret
=
gdh
.
getObjectClass
(
pret
.
objid
);
if
(
cret
.
evenSts
())
return
false
;
if
(
cret
.
classId
==
Pwrb
.
cClass_windowplc
||
cret
.
classId
==
Pwrb
.
cClass_windowsubstep
||
cret
.
classId
==
Pwrb
.
cClass_windoworderact
||
cret
.
classId
==
Pwrb
.
cClass_windowplc
)
return
true
;
return
false
;
}
public
void
openTrace
()
{
if
(
classid
==
Pwrb
.
cClass_windowplc
||
classid
==
Pwrb
.
cClass_windowsubstep
||
classid
==
Pwrb
.
cClass_windoworderact
||
classid
==
Pwrb
.
cClass_windowplc
)
{
session
.
openFlowFrame
(
aref
.
getObjid
(),
null
);
}
else
if
(
classid
==
Pwrb
.
cClass_plc
)
{
// Open child
CdhrObjid
child
=
gdh
.
getChild
(
aref
.
getObjid
());
if
(
child
.
evenSts
())
return
;
CdhrClassId
cret
=
gdh
.
getObjectClass
(
child
.
objid
);
if
(
cret
.
evenSts
())
return
;
if
(
cret
.
classId
==
Pwrb
.
cClass_windowplc
||
cret
.
classId
==
Pwrb
.
cClass_windowsubstep
||
cret
.
classId
==
Pwrb
.
cClass_windoworderact
||
cret
.
classId
==
Pwrb
.
cClass_windowplc
)
{
session
.
openFlowFrame
(
child
.
objid
,
null
);
}
methods
.
openObjectGraph
();
}
else
{
// Open parent window and center object
CdhrObjid
parent
=
gdh
.
getParent
(
aref
.
getObjid
());
if
(
parent
.
evenSts
())
return
;
int
idx
=
object
.
lastIndexOf
(
'-'
);
if
(
idx
==
-
1
)
return
;
String
name
=
object
.
substring
(
idx
+
1
);
session
.
openFlowFrame
(
parent
.
objid
,
name
);
else
if
(
event
.
getActionCommand
().
equals
(
"Hist Event"
))
{
methods
.
histEvent
();
}
}
public
boolean
openGraphFilter
()
{
if
(
utility
==
JopUtility
.
GRAPH
)
{
// Check caller name...
}
String
attr
=
object
+
".DefGraph"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
false
;
if
(
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
openGraph
()
{
String
attr
=
object
+
".DefGraph"
;
CdhrString
xttgraph
=
gdh
.
getObjectInfoString
(
attr
);
if
(
xttgraph
.
evenSts
())
return
;
attr
=
xttgraph
.
str
+
".Action"
;
CdhrString
actionRet
=
gdh
.
getObjectInfoString
(
attr
);
if
(
actionRet
.
evenSts
())
return
;
int
idx
=
actionRet
.
str
.
lastIndexOf
(
'.'
);
String
action
;
if
(
idx
!=
-
1
)
action
=
actionRet
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
actionRet
.
str
.
substring
(
1
,
idx
);
else
action
=
actionRet
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
actionRet
.
str
.
substring
(
1
);
String
instance
=
null
;
attr
=
xttgraph
.
str
+
".Object"
;
CdhrString
instanceRet
=
gdh
.
getObjectInfoString
(
attr
);
if
(
instanceRet
.
oddSts
()
&&
!
instanceRet
.
str
.
equals
(
""
))
instance
=
instanceRet
.
str
;
session
.
openGraphFrame
(
action
,
instance
,
false
,
false
);
}
public
boolean
helpFilter
()
{
String
attr
=
object
+
".HelpTopic"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
help
()
{
String
attr
=
object
+
".HelpTopic"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"help "
+
sret
.
str
;
session
.
executeCommand
(
cmd
);
}
public
boolean
dataSheetFilter
()
{
String
attr
=
object
+
".DataSheet"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
dataSheet
()
{
String
attr
=
object
+
".DataSheet"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"open url \""
+
sret
.
str
+
"\""
;
System
.
out
.
println
(
"dataSheet: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
circuitDiagramFilter
()
{
String
attr
=
object
+
".CircuitDiagram"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
()
||
sret
.
str
.
equals
(
""
))
return
false
;
return
true
;
}
public
void
circuitDiagram
()
{
String
attr
=
object
+
".CircuitDiagram"
;
CdhrString
sret
=
gdh
.
getObjectInfoString
(
attr
);
if
(
sret
.
evenSts
())
return
;
String
cmd
=
"open url \""
+
sret
.
str
+
"\""
;
System
.
out
.
println
(
"circuitDiagram: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
classHelpFilter
()
{
return
true
;
}
public
void
classHelp
()
{
CdhrObjid
oret
=
gdh
.
classIdToObjid
(
classid
);
if
(
oret
.
evenSts
())
return
;
CdhrString
sret
=
gdh
.
objidToName
(
oret
.
objid
,
Cdh
.
mName_volumeStrict
);
if
(
sret
.
evenSts
())
return
;
int
idx
=
sret
.
str
.
lastIndexOf
(
":"
);
if
(
idx
==
-
1
)
return
;
String
volume
=
sret
.
str
.
substring
(
0
,
idx
);
idx
=
sret
.
str
.
lastIndexOf
(
"-"
);
if
(
idx
==
-
1
)
return
;
String
className
=
sret
.
str
.
substring
(
idx
+
1
);
String
url
=
volume
.
toLowerCase
()
+
"_"
+
className
.
toLowerCase
()
+
".html"
;
String
cmd
=
"open url \""
+
url
+
"\""
;
session
.
executeCommand
(
cmd
);
}
public
boolean
classGraphFilter
()
{
if
(
classid
==
Pwrs
.
cClass_Node
)
return
true
;
CdhrObjid
coid
=
gdh
.
classIdToObjid
(
classid
);
if
(
coid
.
evenSts
())
return
false
;
CdhrString
sret
=
gdh
.
objidToName
(
coid
.
objid
,
Cdh
.
mName_object
);
if
(
sret
.
evenSts
())
return
false
;
String
name
;
if
(
coid
.
objid
.
vid
<
Cdh
.
cUserClassVolMin
||
(
coid
.
objid
.
vid
>=
Cdh
.
cManufactClassVolMin
&&
coid
.
objid
.
vid
<=
Cdh
.
cManufactClassVolMax
))
{
// Class is a base class, java classname starts with JopC_
if
(
coid
.
objid
.
vid
==
1
)
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
1
,
2
).
toUpperCase
()
+
sret
.
str
.
substring
(
2
).
toLowerCase
();
else
if
(
coid
.
objid
.
vid
==
10
)
name
=
"jpwr.bcomp.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
else
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
}
else
// Java name equals class name
name
=
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
();
System
.
out
.
println
(
"classGraphFilter: "
+
name
);
try
{
Class
clazz
=
Class
.
forName
(
name
);
}
catch
(
Exception
e
)
{
return
false
;
}
return
true
;
}
public
void
classGraph
()
{
String
cmd
=
"open graph /class /instance="
+
object
;
System
.
out
.
println
(
"classGraph: "
+
cmd
);
session
.
executeCommand
(
cmd
);
}
public
boolean
openSearchFilter
(){
// XXX If needed, this is the place to filter what
// objects are searchable.
return
true
;
}
public
void
openSearch
(){
session
.
openSearch
(
object
);
else
if
(
event
.
getActionCommand
().
equals
(
"Simulate"
))
{
methods
.
simulate
();
}
}
public
boolean
isVisible
()
{
return
popup
.
isVisible
();
...
...
java/jpwr/jop/src/JopSessionIfc.java
View file @
44956b4e
...
...
@@ -37,7 +37,7 @@ public interface JopSessionIfc {
public
void
openGraphFrame
(
String
name
,
String
instance
,
boolean
scrollbar
,
boolean
classGraph
);
public
void
openFlowFrame
(
PwrtObjid
oid
,
String
center
);
public
void
openCrrFrame
(
String
name
);
public
void
executeCommand
(
String
command
);
public
int
executeCommand
(
String
command
);
public
boolean
isApplet
();
public
boolean
isApplication
();
public
boolean
isOpWindowApplet
();
...
...
java/jpwr/jop/src/JopSessionRep.java
View file @
44956b4e
...
...
@@ -168,9 +168,14 @@ public class JopSessionRep implements JopSessionIfc {
if
(
coid
.
objid
.
vid
==
1
)
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
1
,
2
).
toUpperCase
()
+
sret
.
str
.
substring
(
2
).
toLowerCase
()
+
suffix
;
else
if
(
coid
.
objid
.
vid
==
10
)
name
=
"jpwr.bcomp.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
()
+
suffix
;
else
if
(
coid
.
objid
.
vid
==
10
)
{
if
(
sret
.
str
.
startsWith
(
"BaseFcPPO"
))
name
=
"jpwr.bcompfc.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
()
+
suffix
;
else
name
=
"jpwr.bcomp.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
()
+
suffix
;
}
else
name
=
"jpwr.jopc.Jopc"
+
sret
.
str
.
substring
(
0
,
1
).
toUpperCase
()
+
sret
.
str
.
substring
(
1
).
toLowerCase
()
+
suffix
;
...
...
@@ -228,7 +233,8 @@ public class JopSessionRep implements JopSessionIfc {
for
(
int
i
=
0
;
i
<
frames
.
size
();
i
++)
{
Object
o
=
frames
.
get
(
i
);
PwrtObjid
utilityObjid
=
((
JopUtilityIfc
)
o
).
getUtilityObjid
();
if
(
((
JopUtilityIfc
)
o
).
getUtilityType
()
==
type
&&
if
(
((
JopUtilityIfc
)
o
).
getUtilityType
()
==
type
&&
utilityObjid
!=
null
&&
utilityObjid
.
oix
==
objid
.
oix
&&
utilityObjid
.
vid
==
objid
.
vid
)
{
return
o
;
}
...
...
@@ -288,8 +294,8 @@ public class JopSessionRep implements JopSessionIfc {
}
public
void
executeCommand
(
String
command
)
{
JopSpider
.
command
(
session
,
command
);
public
int
executeCommand
(
String
command
)
{
return
JopSpider
.
command
(
session
,
command
);
}
public
boolean
isApplet
()
{
...
...
java/jpwr/jop/src/JopSpider.java
View file @
44956b4e
...
...
@@ -38,6 +38,9 @@ public class JopSpider {
static
int
op_qcom_nid
;
static
Qcom
qcom
;
static
String
systemName
;
static
String
methObject
;
static
PwrtAttrRef
methAref
;
static
int
methClassId
;
public
JopSpider
(
int
op_qcom_qix
)
{
JopSpider
.
op_qcom_qix
=
op_qcom_qix
;
...
...
@@ -80,17 +83,19 @@ System.out.println( "qcom put finished");
static
CliTable
[]
cliTable
=
new
CliTable
[]
{
new
CliTable
(
"OPEN"
,
new
String
[]
{
"cli_arg1"
,
"cli_arg2"
,
"/NAME"
,
"/FILE"
,
"/SCROLLBAR"
,
"/WIDTH"
,
"/HEIGHT"
,
"/MENU"
,
"/NAVIGATOR"
,
"/CENTER"
,
"/OBJECT"
,
"/INSTANCE"
,
"/NEW"
,
"/CLASSGRAPH"
,
"/ACCESS"
}),
"/CENTER"
,
"/OBJECT"
,
"/INSTANCE"
,
"/NEW"
,
"/CLASSGRAPH"
,
"/ACCESS"
,
"/PARENT"
}),
new
CliTable
(
"EXIT"
,
null
),
new
CliTable
(
"HELP"
,
new
String
[]
{
"cli_arg1"
,
"cli_arg2"
,
"cli_arg3"
,
"cli_arg4"
,
"/HELPFILE"
,
"/POPNAVIGATOR"
,
"/BOOKMARK"
,
"/INDEX"
,
"/BASE"
,
"/RETURNCOMMAND"
,
"/WIDTH"
,
"/HEIGHT"
,
"/VERSION"
}),
new
CliTable
(
"SET"
,
new
String
[]
{
"cli_arg1"
,
"/NAME"
,
"/VALUE"
,
"/BYPASS"
}),
new
CliTable
(
"EXAMPLE"
,
new
String
[]
{
"/NAME"
,
"/HIERARCHY"
})
new
CliTable
(
"EXAMPLE"
,
new
String
[]
{
"/NAME"
,
"/HIERARCHY"
}),
new
CliTable
(
"CHECK"
,
new
String
[]
{
"cli_arg1"
,
"/METHOD"
,
"/OBJECT"
}),
new
CliTable
(
"CALL"
,
new
String
[]
{
"cli_arg1"
,
"/METHOD"
,
"/OBJECT"
})
};
static
void
command
(
JopSession
session
,
String
cmd
)
{
static
int
command
(
JopSession
session
,
String
cmd
)
{
boolean
local_cmd
=
false
;
Object
root
=
session
.
getRoot
();
Gdh
gdh
=
session
.
getEngine
().
gdh
;
...
...
@@ -122,7 +127,7 @@ System.out.println( "qcom put finished");
if
(
!
cli
.
qualifierFound
(
"cli_arg2"
))
{
System
.
out
.
println
(
"Syntax error"
);
return
;
return
0
;
}
String
frameName
=
cli
.
getQualValue
(
"cli_arg2"
);
String
instance
=
cli
.
getQualValue
(
"/INSTANCE"
);
...
...
@@ -161,7 +166,7 @@ System.out.println( "qcom put finished");
if
(
objectValue
.
charAt
(
0
)
==
'*'
)
{
CdhrObjid
cdhr_node
=
gdh
.
getNodeObject
(
0
);
if
(
cdhr_node
.
evenSts
())
return
;
return
0
;
CdhrString
cdhr_nodestr
=
gdh
.
objidToName
(
cdhr_node
.
objid
,
Cdh
.
mName_volumeStrict
);
objectName
=
cdhr_nodestr
.
str
+
objectValue
.
substring
(
1
);
}
...
...
@@ -172,7 +177,7 @@ System.out.println( "qcom put finished");
CdhrString
cdhr
=
gdh
.
getObjectInfoString
(
attrName
);
if
(
cdhr
.
evenSts
())
{
System
.
out
.
println
(
"Object name error"
);
return
;
return
0
;
}
int
idx
=
cdhr
.
str
.
lastIndexOf
(
".pwg"
);
if
(
idx
!=
-
1
)
...
...
@@ -183,8 +188,7 @@ System.out.println( "qcom put finished");
appletName
=
cdhr
.
str
.
substring
(
0
,
idx
);
else
{
// This is a command
command
(
session
,
cdhr
.
str
);
return
;
return
command
(
session
,
cdhr
.
str
);
}
}
...
...
@@ -213,11 +217,18 @@ System.out.println( "qcom put finished");
if
(
cli
.
qualifierFound
(
"/INSTANCE"
))
{
instanceValue
=
cli
.
getQualValue
(
"/INSTANCE"
);
classGraph
=
cli
.
qualifierFound
(
"/CLASSGRAPH"
);
boolean
parent
=
cli
.
qualifierFound
(
"/PARENT"
);
if
(
parent
)
{
int
idx
=
instanceValue
.
lastIndexOf
(
'.'
);
if
(
idx
!=
-
1
&&
idx
!=
0
)
instanceValue
=
instanceValue
.
substring
(
0
,
idx
);
System
.
out
.
println
(
"open graph /parent: "
+
instanceValue
);
}
}
if
(
!
classGraph
)
{
if
(
!
cli
.
qualifierFound
(
"cli_arg2"
))
{
System
.
out
.
println
(
"Syntax error"
);
return
;
return
0
;
}
frameName
=
cli
.
getQualValue
(
"cli_arg2"
).
toLowerCase
();
...
...
@@ -231,7 +242,7 @@ System.out.println( "qcom put finished");
String
frameName
=
null
;
if
(
!
cli
.
qualifierFound
(
"cli_arg2"
))
{
System
.
out
.
println
(
"Syntax error"
);
return
;
return
0
;
}
frameName
=
cli
.
getQualValue
(
"cli_arg2"
).
toLowerCase
();
...
...
@@ -239,6 +250,14 @@ System.out.println( "qcom put finished");
String
instanceValue
=
cli
.
getQualValue
(
"/INSTANCE"
).
toLowerCase
();
boolean
parent
=
cli
.
qualifierFound
(
"/PARENT"
);
if
(
parent
)
{
int
idx
=
instanceValue
.
lastIndexOf
(
'.'
);
if
(
idx
!=
-
1
&&
idx
!=
0
)
instanceValue
=
instanceValue
.
substring
(
0
,
idx
);
System
.
out
.
println
(
"open graph /parent: "
+
instanceValue
);
}
String
tempFile
=
frameName
+
"_"
+
instanceValue
.
replace
(
'
','
a
'
).
replace
(
'
','
a
'
).
replace
(
'
','
o
'
);
PwrtStatus
psts
=
...
...
@@ -247,7 +266,7 @@ System.out.println( "qcom put finished");
tempFile
+
".html"
,
instanceValue
);
if
(
psts
.
evenSts
())
{
System
.
out
.
println
(
"createInstanceFile error"
);
return
;
return
0
;
}
frameName
=
tempFile
;
}
...
...
@@ -269,11 +288,19 @@ System.out.println( "qcom put finished");
if
(
cli
.
qualifierFound
(
"/INSTANCE"
))
{
instanceValue
=
cli
.
getQualValue
(
"/INSTANCE"
);
classGraph
=
cli
.
qualifierFound
(
"/CLASSGRAPH"
);
boolean
parent
=
cli
.
qualifierFound
(
"/PARENT"
);
if
(
parent
)
{
int
idx
=
instanceValue
.
lastIndexOf
(
'.'
);
if
(
idx
!=
-
1
&&
idx
!=
0
)
instanceValue
=
instanceValue
.
substring
(
0
,
idx
);
System
.
out
.
println
(
"open graph /parent: "
+
instanceValue
);
}
}
if
(
!
classGraph
)
{
if
(
!
cli
.
qualifierFound
(
"cli_arg2"
))
{
System
.
out
.
println
(
"Syntax error"
);
return
;
return
0
;
}
frameName
=
cli
.
getQualValue
(
"cli_arg2"
).
toLowerCase
();
...
...
@@ -363,13 +390,13 @@ System.out.println( "qcom put finished");
name
=
cli
.
getQualValue
(
"/NAME"
);
else
{
System
.
out
.
println
(
"Cmd: name is missing\n"
);
return
;
return
0
;
}
if
(
cli
.
qualifierFound
(
"/VALUE"
))
value
=
cli
.
getQualValue
(
"/VALUE"
);
else
{
System
.
out
.
println
(
"Cmd: value is missing\n"
);
return
;
return
0
;
}
boolean
bypass
=
cli
.
qualifierFound
(
"/BYPASS"
);
if
(
!
bypass
)
{
...
...
@@ -377,13 +404,13 @@ System.out.println( "qcom put finished");
if
(
!
gdh
.
isAuthorized
(
Pwr
.
mPrv_RtWrite
|
Pwr
.
mPrv_System
))
{
System
.
out
.
println
(
"No authorized"
);
return
;
return
0
;
}
}
// Get type of attribute
GdhrGetAttributeChar
ret
=
gdh
.
getAttributeChar
(
name
);
if
(
ret
.
evenSts
())
return
;
if
(
ret
.
evenSts
())
return
0
;
if
(
ret
.
typeId
==
Pwr
.
eType_Float32
)
{
float
setValue
=
Float
.
parseFloat
(
value
);
...
...
@@ -408,7 +435,7 @@ System.out.println( "qcom put finished");
sts
=
gdh
.
setObjectInfo
(
name
,
value
);
}
else
return
;
return
0
;
if
(
sts
.
evenSts
())
System
.
out
.
println
(
"setObjectInfoError "
+
sts
);
...
...
@@ -416,9 +443,137 @@ System.out.println( "qcom put finished");
}
}
}
else
if
(
command
.
equals
(
"CHECK"
))
{
if
(
cli
.
qualifierFound
(
"cli_arg1"
))
{
String
methodstr
=
"METHOD"
;
String
isattributestr
=
"ISATTRIBUTE"
;
String
cli_arg1
=
cli
.
getQualValue
(
"cli_arg1"
).
toUpperCase
();
if
(
methodstr
.
length
()
>=
cli_arg1
.
length
()
&&
methodstr
.
substring
(
0
,
cli_arg1
.
length
()).
equals
(
cli_arg1
))
{
// Command is "CHECK METHOD"
String
method
;
String
object
;
if
(
cli
.
qualifierFound
(
"/METHOD"
))
method
=
cli
.
getQualValue
(
"/METHOD"
);
else
{
System
.
out
.
println
(
"Cmd: Method is missing\n"
);
return
0
;
}
if
(
cli
.
qualifierFound
(
"/OBJECT"
))
object
=
cli
.
getQualValue
(
"/OBJECT"
);
else
{
System
.
out
.
println
(
"Cmd: Object is missing\n"
);
return
0
;
}
if
(
methObject
==
null
||
object
.
compareToIgnoreCase
(
methObject
)
!=
0
)
{
CdhrAttrRef
oret
=
gdh
.
nameToAttrRef
(
object
);
if
(
oret
.
evenSts
())
return
0
;
CdhrTypeId
cret
=
gdh
.
getAttrRefTid
(
oret
.
aref
);
if
(
cret
.
evenSts
())
return
0
;
methObject
=
object
;
methAref
=
oret
.
aref
;
methClassId
=
cret
.
typeId
;
}
JopMethods
methods
=
new
JopMethods
(
session
,
methAref
,
methObject
,
methClassId
,
JopUtility
.
NO
);
boolean
b
=
methods
.
callFilterMethod
(
method
);
System
.
out
.
println
(
"Cmd check method: "
+
method
+
" , Object: "
+
object
+
", value: "
+
b
);
if
(
b
)
return
1
;
else
return
0
;
}
else
if
(
isattributestr
.
length
()
>=
cli_arg1
.
length
()
&&
isattributestr
.
substring
(
0
,
cli_arg1
.
length
()).
equals
(
cli_arg1
))
{
// Command is "CHECK ISATTRIBUTE"
String
method
;
String
object
;
if
(
cli
.
qualifierFound
(
"/OBJECT"
))
object
=
cli
.
getQualValue
(
"/OBJECT"
);
else
{
System
.
out
.
println
(
"Cmd: Object is missing\n"
);
return
0
;
}
if
(
methObject
==
null
||
object
.
compareToIgnoreCase
(
methObject
)
!=
0
)
{
CdhrAttrRef
oret
=
gdh
.
nameToAttrRef
(
object
);
if
(
oret
.
evenSts
())
return
0
;
CdhrTypeId
cret
=
gdh
.
getAttrRefTid
(
oret
.
aref
);
if
(
cret
.
evenSts
())
return
0
;
methObject
=
object
;
methAref
=
oret
.
aref
;
methClassId
=
cret
.
typeId
;
}
if
(
(
methAref
.
flags
&
PwrtAttrRef
.
OBJECTATTR
)
!=
0
)
return
1
;
else
return
0
;
}
}
}
else
if
(
command
.
equals
(
"CALL"
))
{
if
(
cli
.
qualifierFound
(
"cli_arg1"
))
{
String
parameter
=
"METHOD"
;
String
cli_arg1
=
cli
.
getQualValue
(
"cli_arg1"
).
toUpperCase
();
if
(
parameter
.
length
()
>=
cli_arg1
.
length
()
&&
parameter
.
substring
(
0
,
cli_arg1
.
length
()).
equals
(
cli_arg1
))
{
// Command is "CHECK METHOD"
String
method
;
String
object
;
if
(
cli
.
qualifierFound
(
"/METHOD"
))
method
=
cli
.
getQualValue
(
"/METHOD"
);
else
{
System
.
out
.
println
(
"Cmd: Method is missing\n"
);
return
0
;
}
if
(
cli
.
qualifierFound
(
"/OBJECT"
))
object
=
cli
.
getQualValue
(
"/OBJECT"
);
else
{
System
.
out
.
println
(
"Cmd: Object is missing\n"
);
return
0
;
}
if
(
methObject
==
null
||
object
.
compareToIgnoreCase
(
methObject
)
!=
0
)
{
CdhrAttrRef
oret
=
gdh
.
nameToAttrRef
(
object
);
if
(
oret
.
evenSts
())
return
0
;
CdhrTypeId
cret
=
gdh
.
getAttrRefTid
(
oret
.
aref
);
if
(
cret
.
evenSts
())
return
0
;
methObject
=
object
;
methAref
=
oret
.
aref
;
methClassId
=
cret
.
typeId
;
}
JopMethods
methods
=
new
JopMethods
(
session
,
methAref
,
methObject
,
methClassId
,
JopUtility
.
NO
);
methods
.
callMethod
(
method
);
System
.
out
.
println
(
"Cmd call method: "
+
method
+
" , Object: "
+
object
);
return
1
;
}
}
}
}
else
else
{
System
.
out
.
println
(
"JopSpider: Parse error "
+
cli
.
getStsString
());
return
0
;
}
if
(
!
local_cmd
)
{
// Send to xtt
...
...
@@ -429,7 +584,7 @@ System.out.println( "qcom put finished");
System
.
out
.
println
(
"Qcom put error: "
+
sts
.
getSts
());
}
}
return
1
;
}
private
class
JopSpiderCmd
extends
Thread
{
JopSession
session
;
...
...
java/jpwr/jop/src/JopUtility.java
View file @
44956b4e
...
...
@@ -20,6 +20,7 @@
package
jpwr.jop
;
public
class
JopUtility
{
public
static
final
int
NO
=
0
;
public
static
final
int
TRACE
=
1
;
public
static
final
int
GRAPH
=
2
;
public
static
final
int
NAVIGATOR
=
3
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment