mpxj 9.6.0 → 9.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/mpxj/container.rb +2 -3
- data/lib/mpxj/mpxj.jar +0 -0
- data/lib/mpxj/property_methods.rb +16 -0
- data/lib/mpxj/reader.rb +3 -2
- data/lib/mpxj/task_methods.rb +37 -5
- data/lib/mpxj/version.rb +1 -1
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bff93b1756d0b570ed653a5e17f5a1b1f7d1db920b094b1b11a815a9ed735dfb
|
4
|
+
data.tar.gz: e0f2403a326b572c5daa8ec41f076d874f52bceebfc6c5c335a2d583340178fb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 91953a33d73084562b258352326d3063549c6ba34d36df28c94f2d1e8b5848042d03f8d0843d66c283062b11e49c719e771583e9ecbdeca555d3931aa00f20c0
|
7
|
+
data.tar.gz: 173b0cb59e2833a50ab4c5fabbe830cf03dbe389ac9b75b6dc44f181076c99099db92f41053585f43b3e87e08230b283b76e0eccdc36013e11aa3869ade2477e
|
data/lib/mpxj/container.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'duration'
|
2
1
|
require 'time'
|
3
2
|
|
4
3
|
module MPXJ
|
@@ -16,9 +15,9 @@ module MPXJ
|
|
16
15
|
|
17
16
|
def get_duration_value(attribute_value)
|
18
17
|
if attribute_value.nil?
|
19
|
-
|
18
|
+
0.0
|
20
19
|
else
|
21
|
-
|
20
|
+
attribute_value.to_f
|
22
21
|
end
|
23
22
|
end
|
24
23
|
|
data/lib/mpxj/mpxj.jar
CHANGED
Binary file
|
@@ -2027,6 +2027,13 @@ module MPXJ
|
|
2027
2027
|
get_integer_value(attribute_values['minutes_per_day'])
|
2028
2028
|
end
|
2029
2029
|
|
2030
|
+
# Retrieve the Minutes per Month value
|
2031
|
+
#
|
2032
|
+
# @return Minutes per Month value
|
2033
|
+
def minutes_per_month
|
2034
|
+
get_integer_value(attribute_values['minutes_per_month'])
|
2035
|
+
end
|
2036
|
+
|
2030
2037
|
# Retrieve the Minutes per Week value
|
2031
2038
|
#
|
2032
2039
|
# @return Minutes per Week value
|
@@ -2034,6 +2041,13 @@ module MPXJ
|
|
2034
2041
|
get_integer_value(attribute_values['minutes_per_week'])
|
2035
2042
|
end
|
2036
2043
|
|
2044
|
+
# Retrieve the Minutes per Year value
|
2045
|
+
#
|
2046
|
+
# @return Minutes per Year value
|
2047
|
+
def minutes_per_year
|
2048
|
+
get_integer_value(attribute_values['minutes_per_year'])
|
2049
|
+
end
|
2050
|
+
|
2037
2051
|
# Retrieve the Move Completed Ends Back value
|
2038
2052
|
#
|
2039
2053
|
# @return Move Completed Ends Back value
|
@@ -2646,7 +2660,9 @@ module MPXJ
|
|
2646
2660
|
'manager' => :string,
|
2647
2661
|
'microsoft_project_server_url' => :boolean,
|
2648
2662
|
'minutes_per_day' => :integer,
|
2663
|
+
'minutes_per_month' => :integer,
|
2649
2664
|
'minutes_per_week' => :integer,
|
2665
|
+
'minutes_per_year' => :integer,
|
2650
2666
|
'move_completed_ends_back' => :boolean,
|
2651
2667
|
'move_completed_ends_forward' => :boolean,
|
2652
2668
|
'move_remaining_starts_back' => :boolean,
|
data/lib/mpxj/reader.rb
CHANGED
@@ -13,15 +13,16 @@ module MPXJ
|
|
13
13
|
#
|
14
14
|
# @param file_name [String] the name of the file to read
|
15
15
|
# @param zone [ActiveSupport::TimeZone] an optional timezone
|
16
|
+
# @param time_units [Symbol] optional, specify the units for expressing durations. By default durations are in seconds, can pass :minutes, :hours, :days: weeks:, :months or :years
|
16
17
|
# @return [Project] new Project instance
|
17
|
-
def self.read(file_name, zone = nil)
|
18
|
+
def self.read(file_name, zone = nil, time_units = :seconds)
|
18
19
|
project = nil
|
19
20
|
json_file = Tempfile.new([File.basename(file_name, ".*"), '.json'])
|
20
21
|
tz = zone || Time.zone || ActiveSupport::TimeZone["UTC"]
|
21
22
|
|
22
23
|
begin
|
23
24
|
classpath = "#{File.dirname(__FILE__)}/*"
|
24
|
-
java_output = `java -cp \"#{classpath}\" #{jvm_args} net.sf.mpxj.
|
25
|
+
java_output = `java -cp \"#{classpath}\" #{jvm_args} net.sf.mpxj.ruby.GenerateJson \"#{file_name}\" \"#{json_file.path}\" \"#{time_units}\"`
|
25
26
|
if $?.exitstatus != 0
|
26
27
|
report_error(java_output)
|
27
28
|
end
|
data/lib/mpxj/task_methods.rb
CHANGED
@@ -1397,6 +1397,13 @@ module MPXJ
|
|
1397
1397
|
attribute_values['board_status']
|
1398
1398
|
end
|
1399
1399
|
|
1400
|
+
# Retrieve the Board Status ID value
|
1401
|
+
#
|
1402
|
+
# @return Board Status ID value
|
1403
|
+
def board_status_id
|
1404
|
+
get_integer_value(attribute_values['board_status_id'])
|
1405
|
+
end
|
1406
|
+
|
1400
1407
|
# Retrieve the Budget Cost value
|
1401
1408
|
#
|
1402
1409
|
# @return Budget Cost value
|
@@ -7557,6 +7564,27 @@ module MPXJ
|
|
7557
7564
|
attribute_values['sprint']
|
7558
7565
|
end
|
7559
7566
|
|
7567
|
+
# Retrieve the Sprint Finish value
|
7568
|
+
#
|
7569
|
+
# @return Sprint Finish value
|
7570
|
+
def sprint_finish
|
7571
|
+
get_date_value(attribute_values['sprint_finish'])
|
7572
|
+
end
|
7573
|
+
|
7574
|
+
# Retrieve the Sprint ID value
|
7575
|
+
#
|
7576
|
+
# @return Sprint ID value
|
7577
|
+
def sprint_id
|
7578
|
+
get_integer_value(attribute_values['sprint_id'])
|
7579
|
+
end
|
7580
|
+
|
7581
|
+
# Retrieve the Sprint Start value
|
7582
|
+
#
|
7583
|
+
# @return Sprint Start value
|
7584
|
+
def sprint_start
|
7585
|
+
get_date_value(attribute_values['sprint_start'])
|
7586
|
+
end
|
7587
|
+
|
7560
7588
|
# Retrieve the Start value
|
7561
7589
|
#
|
7562
7590
|
# @return Start value
|
@@ -7795,11 +7823,11 @@ module MPXJ
|
|
7795
7823
|
get_boolean_value(attribute_values['task_mode'])
|
7796
7824
|
end
|
7797
7825
|
|
7798
|
-
# Retrieve the Task Summary value
|
7826
|
+
# Retrieve the Task Summary Name value
|
7799
7827
|
#
|
7800
|
-
# @return Task Summary value
|
7801
|
-
def
|
7802
|
-
attribute_values['
|
7828
|
+
# @return Task Summary Name value
|
7829
|
+
def task_summary_name
|
7830
|
+
attribute_values['task_summary_name']
|
7803
7831
|
end
|
7804
7832
|
|
7805
7833
|
# Retrieve the TCPI value
|
@@ -8345,6 +8373,7 @@ module MPXJ
|
|
8345
8373
|
'bcws' => :currency,
|
8346
8374
|
'bid_item' => :string,
|
8347
8375
|
'board_status' => :string,
|
8376
|
+
'board_status_id' => :integer,
|
8348
8377
|
'budget_cost' => :currency,
|
8349
8378
|
'budget_work' => :work,
|
8350
8379
|
'calendar' => :binary,
|
@@ -9225,6 +9254,9 @@ module MPXJ
|
|
9225
9254
|
'spi' => :numeric,
|
9226
9255
|
'splits' => :date_range_list,
|
9227
9256
|
'sprint' => :string,
|
9257
|
+
'sprint_finish' => :date,
|
9258
|
+
'sprint_id' => :integer,
|
9259
|
+
'sprint_start' => :date,
|
9228
9260
|
'start' => :date,
|
9229
9261
|
'start1' => :date,
|
9230
9262
|
'start10' => :date,
|
@@ -9259,7 +9291,7 @@ module MPXJ
|
|
9259
9291
|
'task_calendar' => :string,
|
9260
9292
|
'task_calendar_guid' => :guid,
|
9261
9293
|
'task_mode' => :boolean,
|
9262
|
-
'
|
9294
|
+
'task_summary_name' => :string,
|
9263
9295
|
'tcpi' => :numeric,
|
9264
9296
|
'teamstatus_pending' => :boolean,
|
9265
9297
|
'text1' => :string,
|
data/lib/mpxj/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mpxj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jon Iles
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-09-
|
11
|
+
date: 2021-09-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,20 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: ruby-duration
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :runtime
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: activesupport
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|