Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
I
imagej-elphel
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
3
Issues
3
List
Board
Labels
Milestones
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Elphel
imagej-elphel
Commits
4c01a1b0
Commit
4c01a1b0
authored
Oct 19, 2014
by
Andrey Filippov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
power control debug cleanup
parent
8816cfb2
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
77 additions
and
34 deletions
+77
-34
CalibrationHardwareInterface.java
src/main/java/CalibrationHardwareInterface.java
+77
-34
No files found.
src/main/java/CalibrationHardwareInterface.java
View file @
4c01a1b0
...
...
@@ -40,6 +40,7 @@ import java.io.FileWriter;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.io.StringWriter
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.net.URLConnection
;
...
...
@@ -53,6 +54,13 @@ import java.util.concurrent.atomic.AtomicInteger;
import
javax.xml.parsers.DocumentBuilder
;
import
javax.xml.parsers.DocumentBuilderFactory
;
import
javax.xml.parsers.ParserConfigurationException
;
import
javax.xml.transform.OutputKeys
;
import
javax.xml.transform.Transformer
;
import
javax.xml.transform.TransformerConfigurationException
;
import
javax.xml.transform.TransformerException
;
import
javax.xml.transform.TransformerFactory
;
import
javax.xml.transform.dom.DOMSource
;
import
javax.xml.transform.stream.StreamResult
;
import
org.apache.commons.configuration.ConfigurationException
;
import
org.apache.commons.configuration.XMLConfiguration
;
...
...
@@ -1809,7 +1817,7 @@ public class CalibrationHardwareInterface {
public
int
debugLevel
=
1
;
private
String
powerIP
=
"192.168.0.80"
;
private
double
lightsDelay
=
5.0
;
private
final
String
urlFormat
=
"http://%s/insteon/index.php?cmd=%s&group=%s"
;
private
final
String
urlFormat
=
"http://%s/insteon/index.php?cmd=%s&group=%s
×tamp=%d
"
;
private
final
String
rootElement
=
"Document"
;
public
boolean
powerConrtolEnabled
=
false
;
public
void
setProperties
(
String
prefix
,
Properties
properties
){
...
...
@@ -1832,41 +1840,76 @@ public class CalibrationHardwareInterface {
System
.
out
.
println
(
"=== Power control is disabled ==="
);
return
false
;
}
System
.
out
.
println
(
"=== Power control: "
+
group
+
":"
+
state
+
" ==="
);
String
url
=
String
.
format
(
urlFormat
,
this
.
powerIP
,
state
,
group
);
if
(
this
.
debugLevel
>
2
)
System
.
out
.
println
(
"setPower: "
+
url
);
Document
dom
=
null
;
try
{
DocumentBuilderFactory
dbf
=
DocumentBuilderFactory
.
newInstance
();
DocumentBuilder
db
=
dbf
.
newDocumentBuilder
();
dom
=
db
.
parse
(
url
);
if
(!
dom
.
getDocumentElement
().
getNodeName
().
equals
(
rootElement
))
{
System
.
out
.
println
(
"Root element: expected \""
+
rootElement
+
"\", got \""
+
dom
.
getDocumentElement
().
getNodeName
()+
"\""
);
IJ
.
showMessage
(
"Error"
,
"Root element: expected \""
+
rootElement
+
"\", got \""
+
dom
.
getDocumentElement
().
getNodeName
()+
"\""
);
return
false
;
}
// boolean responceError= (dom.getDocumentElement().getElementsByTagName("error").getLength()!=0);
// if (responceError) {
// System.out.println("ERROR: register write ("+url+") FAILED" );
// IJ.showMessage("Error","register write ("+url+") FAILED");
// return false;
// }
}
catch
(
MalformedURLException
e
){
System
.
out
.
println
(
"Please check the URL:"
+
e
.
toString
()
);
return
false
;
}
catch
(
IOException
e1
){
IJ
.
showStatus
(
""
);
String
error
=
e1
.
getMessage
();
if
(
error
==
null
||
error
.
equals
(
""
))
error
=
""
+
e1
;
IJ
.
showMessage
(
"setPower ERROR"
,
""
+
error
);
return
false
;
}
catch
(
ParserConfigurationException
pce
)
{
pce
.
printStackTrace
();
return
false
;
}
catch
(
SAXException
se
)
{
se
.
printStackTrace
();
long
thisTime
=
System
.
nanoTime
();
if
(
debugLevel
>
0
)
System
.
out
.
println
(
"=== Power control: "
+
group
+
":"
+
state
+
" ==="
);
String
url
=
String
.
format
(
urlFormat
,
this
.
powerIP
,
state
,
group
,
thisTime
);
if
(
this
.
debugLevel
>
1
)
System
.
out
.
println
(
"setPower: "
+
url
);
Document
dom
=
null
;
try
{
DocumentBuilderFactory
dbf
=
DocumentBuilderFactory
.
newInstance
();
DocumentBuilder
db
=
dbf
.
newDocumentBuilder
();
dom
=
db
.
parse
(
url
);
if
(!
dom
.
getDocumentElement
().
getNodeName
().
equals
(
rootElement
))
{
System
.
out
.
println
(
"Root element: expected \""
+
rootElement
+
"\", got \""
+
dom
.
getDocumentElement
().
getNodeName
()+
"\""
);
IJ
.
showMessage
(
"Error"
,
"Root element: expected \""
+
rootElement
+
"\", got \""
+
dom
.
getDocumentElement
().
getNodeName
()+
"\""
);
return
false
;
}
// boolean responceError= (dom.getDocumentElement().getElementsByTagName("error").getLength()!=0);
// if (responceError) {
// System.out.println("ERROR: register write ("+url+") FAILED" );
// IJ.showMessage("Error","register write ("+url+") FAILED");
// return false;
// }
// System.out.println(dom);
// System.out.println(dom.getDocumentElement().toString());
// System.out.println(dom.getDocumentElement().getNodeName());
// System.out.println(dom.getDocumentElement().getElementsByTagName("message"));
// System.out.println(dom.getDocumentElement().getElementsByTagName("state"));
if
(
dom
.
getDocumentElement
().
getElementsByTagName
(
"state"
).
getLength
()>
0
){
if
(
debugLevel
>
0
)
System
.
out
.
println
(
"state="
+((
Node
)
(((
Node
)
dom
.
getDocumentElement
().
getElementsByTagName
(
"state"
).
item
(
0
)).
getChildNodes
().
item
(
0
))).
getNodeValue
());
}
else
{
System
.
out
.
println
(
"*** Empty Document from Insteon"
);
return
false
;
}
}
catch
(
MalformedURLException
e
){
System
.
out
.
println
(
"Please check the URL:"
+
e
.
toString
()
);
return
false
;
}
catch
(
IOException
e1
){
IJ
.
showStatus
(
""
);
String
error
=
e1
.
getMessage
();
if
(
error
==
null
||
error
.
equals
(
""
))
error
=
""
+
e1
;
IJ
.
showMessage
(
"setPower ERROR"
,
""
+
error
);
return
false
;
}
catch
(
ParserConfigurationException
pce
)
{
pce
.
printStackTrace
();
return
false
;
}
catch
(
SAXException
se
)
{
se
.
printStackTrace
();
return
false
;
}
if
(
debugLevel
>
1
)
{
// debugging
TransformerFactory
tf
=
TransformerFactory
.
newInstance
();
Transformer
transformer
=
null
;
try
{
transformer
=
tf
.
newTransformer
();
}
catch
(
TransformerConfigurationException
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
transformer
.
setOutputProperty
(
OutputKeys
.
OMIT_XML_DECLARATION
,
"yes"
);
StringWriter
writer
=
new
StringWriter
();
try
{
transformer
.
transform
(
new
DOMSource
(
dom
),
new
StreamResult
(
writer
));
}
catch
(
TransformerException
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
String
output
=
writer
.
getBuffer
().
toString
().
replaceAll
(
"\n|\r"
,
""
);
System
.
out
.
println
(
output
);
}
if
(
this
.
debugLevel
>
1
)
System
.
out
.
println
(
"=== Power control: OK ==="
);
for
(
int
i
=
0
;
i
<
this
.
groups
.
length
;
i
++)
if
(
this
.
groups
[
i
].
equals
(
group
)){
this
.
states
[
i
]=
state
.
equals
(
"on"
);
}
...
...
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