723
723
} ( ) ;
724
724
725
725
} , { } ] , 2 :[ function ( require , module , exports ) {
726
+ /*
727
+ object-assign
728
+ (c) Sindre Sorhus
729
+ @license MIT
730
+ */
731
+
726
732
'use strict' ;
727
733
/* eslint-disable no-unused-vars */
734
+ var getOwnPropertySymbols = Object . getOwnPropertySymbols ;
728
735
var hasOwnProperty = Object . prototype . hasOwnProperty ;
729
736
var propIsEnumerable = Object . prototype . propertyIsEnumerable ;
730
737
@@ -745,7 +752,7 @@ function shouldUseNative() {
745
752
// Detect buggy property enumeration order in older V8 versions.
746
753
747
754
// https://bugs.chromium.org/p/v8/issues/detail?id=4118
748
- var test1 = new String ( 'abc' ) ; // eslint-disable-line
755
+ var test1 = new String ( 'abc' ) ; // eslint-disable-line no-new-wrappers
749
756
test1 [ 5 ] = 'de' ;
750
757
if ( Object . getOwnPropertyNames ( test1 ) [ 0 ] === '5' ) {
751
758
return false ;
@@ -774,7 +781,7 @@ function shouldUseNative() {
774
781
}
775
782
776
783
return true ;
777
- } catch ( e ) {
784
+ } catch ( err ) {
778
785
// We don't expect any of the above to throw, but better to be safe.
779
786
return false ;
780
787
}
@@ -794,8 +801,8 @@ module.exports = shouldUseNative() ? Object.assign : function (target, source) {
794
801
}
795
802
}
796
803
797
- if ( Object . getOwnPropertySymbols ) {
798
- symbols = Object . getOwnPropertySymbols ( from ) ;
804
+ if ( getOwnPropertySymbols ) {
805
+ symbols = getOwnPropertySymbols ( from ) ;
799
806
for ( var i = 0 ; i < symbols . length ; i ++ ) {
800
807
if ( propIsEnumerable . call ( from , symbols [ i ] ) ) {
801
808
to [ symbols [ i ] ] = from [ symbols [ i ] ] ;
@@ -1616,6 +1623,35 @@ Ros.prototype.callOnConnection = function(message) {
1616
1623
}
1617
1624
} ;
1618
1625
1626
+ /**
1627
+ * Retrieves Action Servers in ROS as an array of string
1628
+ *
1629
+ * * actionservers - Array of action server names
1630
+ */
1631
+ Ros . prototype . getActionServers = function ( callback , failedCallback ) {
1632
+ var getActionServers = new Service ( {
1633
+ ros : this ,
1634
+ name : '/rosapi/action_servers' ,
1635
+ serviceType : 'rosapi/GetActionServers'
1636
+ } ) ;
1637
+
1638
+ var request = new ServiceRequest ( { } ) ;
1639
+ if ( typeof failedCallback === 'function' ) {
1640
+ getActionServers . callService ( request ,
1641
+ function ( result ) {
1642
+ callback ( result . action_servers ) ;
1643
+ } ,
1644
+ function ( message ) {
1645
+ failedCallback ( message ) ;
1646
+ }
1647
+ ) ;
1648
+ } else {
1649
+ getActionServers . callService ( request , function ( result ) {
1650
+ callback ( result . action_servers ) ;
1651
+ } ) ;
1652
+ }
1653
+ } ;
1654
+
1619
1655
/**
1620
1656
* Retrieves list of topics in ROS as an array.
1621
1657
*
@@ -1641,7 +1677,7 @@ Ros.prototype.getTopics = function(callback, failedCallback) {
1641
1677
) ;
1642
1678
} else {
1643
1679
topicsClient . callService ( request , function ( result ) {
1644
- callback ( result . topics ) ;
1680
+ callback ( result ) ;
1645
1681
} ) ;
1646
1682
}
1647
1683
} ;
0 commit comments