viewpoint 0.0.5 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README +84 -45
- data/Rakefile +7 -5
- data/TODO +6 -0
- data/VERSION +1 -1
- data/lib/exceptions/exceptions.rb +34 -0
- data/lib/extensions/string.rb +37 -0
- data/lib/model/calendar_folder.rb +45 -0
- data/lib/model/calendar_item.rb +145 -0
- data/lib/model/contact.rb +58 -0
- data/lib/model/contacts_folder.rb +35 -0
- data/lib/model/distribution_list.rb +26 -0
- data/lib/model/event.rb +118 -0
- data/lib/model/folder.rb +36 -0
- data/lib/model/generic_folder.rb +302 -0
- data/lib/model/item.rb +126 -0
- data/lib/model/mailbox_user.rb +107 -0
- data/lib/model/meeting_cancellation.rb +28 -0
- data/lib/{viewpoint/errors.rb → model/meeting_message.rb} +10 -14
- data/lib/model/meeting_request.rb +26 -0
- data/lib/model/meeting_response.rb +26 -0
- data/lib/model/message.rb +73 -0
- data/lib/model/model.rb +161 -0
- data/lib/model/search_folder.rb +36 -0
- data/lib/model/task.rb +62 -0
- data/lib/model/task_list.rb +19 -0
- data/lib/model/tasks_folder.rb +33 -0
- data/lib/soap/handsoap/builder.rb +22 -0
- data/lib/soap/handsoap/builders/ews_build_helpers.rb +317 -0
- data/lib/soap/handsoap/builders/ews_builder.rb +86 -0
- data/lib/soap/handsoap/ews_service.rb +646 -0
- data/lib/soap/handsoap/parser.rb +106 -0
- data/lib/soap/handsoap/parsers/ews_parser.rb +165 -0
- data/lib/soap/soap_provider.rb +75 -0
- data/lib/viewpoint.rb +98 -3
- data/preamble +1 -1
- data/test/spec/basic_functions.spec +51 -0
- data/test/spec/folder_subscriptions.spec +35 -0
- data/test/spec/folder_synchronization.spec +28 -0
- data/utils/ewsWSDL2rb.rb +29 -0
- metadata +101 -43
- data/lib/exchwebserv.rb +0 -6
- data/lib/soap/viewpoint.conf +0 -3
- data/lib/viewpoint/calendar.rb +0 -128
- data/lib/viewpoint/calendar_item.rb +0 -118
- data/lib/viewpoint/event.rb +0 -0
- data/lib/viewpoint/exchange_headers.rb +0 -49
- data/lib/viewpoint/exchwebserv.rb +0 -236
- data/lib/viewpoint/folder.rb +0 -358
- data/lib/viewpoint/item.rb +0 -101
- data/lib/viewpoint/mail.rb +0 -117
- data/lib/viewpoint/message.rb +0 -132
- data/lib/viewpoint/task.rb +0 -0
- data/lib/viewpoint/tasks.rb +0 -0
- data/lib/wsdl/defaultMappingRegistry.rb +0 -10680
- data/lib/wsdl/exchangeServiceBinding.rb +0 -349
- data/lib/wsdl/exchangeServiceTypes.rb +0 -11013
- data/test/spec/basic_features_spec.rb +0 -37
- data/test/test_client.rb +0 -13
- data/test/testrestrict.rb +0 -75
@@ -1,37 +0,0 @@
|
|
1
|
-
$: << File.dirname(__FILE__) + '/../../lib/'
|
2
|
-
require 'viewpoint'
|
3
|
-
|
4
|
-
describe "Test the basic features of Viewpoint" do
|
5
|
-
before(:all) do
|
6
|
-
@vp = Viewpoint::ExchWebServ.instance
|
7
|
-
end
|
8
|
-
|
9
|
-
it "should have set authenticated to true" do
|
10
|
-
@vp.authenticate.should be_true
|
11
|
-
end
|
12
|
-
|
13
|
-
it "should find all the EWS folders" do
|
14
|
-
@vp.find_folders.should be_an_instance_of(Hash)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "should resolve the name" do
|
18
|
-
# Most systems have some sort of admin user defined.
|
19
|
-
# Change this to suit your needs.
|
20
|
-
name = "admin"
|
21
|
-
@vp.resolve_name(name).should be_an_instance_of(ResolveNamesResponseMessageType)
|
22
|
-
end
|
23
|
-
|
24
|
-
it "should retrieve all of todays messages" do
|
25
|
-
inbox = @vp.get_folder("Inbox")
|
26
|
-
messages = inbox.get_todays_messages
|
27
|
-
messages.should be_an_instance_of(Array)
|
28
|
-
end
|
29
|
-
|
30
|
-
it "should take the last message of the day and output it in rfc822" do
|
31
|
-
inbox = @vp.get_folder("Inbox")
|
32
|
-
messages = inbox.get_todays_messages
|
33
|
-
messages.should be_an_instance_of(Array)
|
34
|
-
messages.last.to_rfc822.should be_an_instance_of(String)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
data/test/test_client.rb
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
$: << File.dirname(__FILE__) + '/../lib/'
|
2
|
-
require 'viewpoint'
|
3
|
-
$DEBUG = true
|
4
|
-
vp = Viewpoint::ExchWebServ.instance
|
5
|
-
vp.authenticate
|
6
|
-
vp.find_folders
|
7
|
-
mail = vp.get_folder("Inbox")
|
8
|
-
msgs = mail.get_todays_messages
|
9
|
-
|
10
|
-
puts "Sender | Subject | Recieved"
|
11
|
-
msgs.each do |msg|
|
12
|
-
puts "#{msg.sender} | #{msg.subject} |#{msg.date_time_recieved}"
|
13
|
-
end
|
data/test/testrestrict.rb
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
gem 'soap4r'
|
3
|
-
require File.dirname(__FILE__) + '/../lib/exchwebserv'
|
4
|
-
require File.dirname(__FILE__) + '/../lib/wsdl/exchangeServiceBinding'
|
5
|
-
include Viewpoint
|
6
|
-
|
7
|
-
$DEBUG = true
|
8
|
-
|
9
|
-
vp = ExchWebServ.instance
|
10
|
-
vp.authenticate
|
11
|
-
vp.find_folders
|
12
|
-
|
13
|
-
fit = FindItemType.new
|
14
|
-
fit.xmlattr_Traversal = ItemQueryTraversalType::Shallow
|
15
|
-
fit.itemShape = ItemResponseShapeType.new(DefaultShapeNamesType::Default, false)
|
16
|
-
|
17
|
-
fid = NonEmptyArrayOfBaseFolderIdsType.new()
|
18
|
-
fidt = DistinguishedFolderIdType.new
|
19
|
-
fidt.xmlattr_Id = DistinguishedFolderIdNameType::Calendar
|
20
|
-
fid.distinguishedFolderId = fidt
|
21
|
-
fit.parentFolderIds = fid
|
22
|
-
|
23
|
-
cal_span = CalendarViewType.new
|
24
|
-
cal_span.xmlattr_StartDate = DateTime.parse(Date.today.to_s).to_s
|
25
|
-
cal_span.xmlattr_EndDate = DateTime.parse(Date.today.next.to_s).to_s
|
26
|
-
fit.calendarView = cal_span
|
27
|
-
|
28
|
-
|
29
|
-
# Set up restriction
|
30
|
-
# Filter by a "Contains" expression
|
31
|
-
=begin
|
32
|
-
rt = RestrictionType.new
|
33
|
-
se = ContainsExpressionType.new
|
34
|
-
fielduri = PathToUnindexedFieldType.new
|
35
|
-
fielduri.xmlattr_FieldURI = "item:Subject"
|
36
|
-
#const = FieldURIOrConstantType.new
|
37
|
-
c = ConstantValueType.new
|
38
|
-
c.xmlattr_Value = "Systems"
|
39
|
-
#const.constant = c
|
40
|
-
se.path = fielduri
|
41
|
-
se.constant = c
|
42
|
-
se.xmlattr_ContainmentMode = "Substring"
|
43
|
-
rt.containsExpression = se
|
44
|
-
=end
|
45
|
-
|
46
|
-
|
47
|
-
# Filter by when Item was received
|
48
|
-
=begin
|
49
|
-
rt = RestrictionType.new
|
50
|
-
se = IsGreaterThanType.new
|
51
|
-
fielduri = PathToUnindexedFieldType.new
|
52
|
-
fielduri.xmlattr_FieldURI = UnindexedFieldURIType::ItemDateTimeReceived
|
53
|
-
const = FieldURIOrConstantType.new
|
54
|
-
c = ConstantValueType.new
|
55
|
-
c.xmlattr_Value = (DateTime.now - 2).new_offset(0).to_s
|
56
|
-
const.constant = c
|
57
|
-
se.path = fielduri
|
58
|
-
se.fieldURIOrConstant = const
|
59
|
-
rt.isGreaterThan = se
|
60
|
-
=end
|
61
|
-
|
62
|
-
|
63
|
-
# Filter by a simple "Exists" expression
|
64
|
-
=begin
|
65
|
-
rt = RestrictionType.new
|
66
|
-
se = ExistsType.new
|
67
|
-
fielduri = PathToUnindexedFieldType.new
|
68
|
-
fielduri.xmlattr_FieldURI="item:Subject"
|
69
|
-
se.path = fielduri
|
70
|
-
rt.exists = se
|
71
|
-
=end
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
vp.ews.findItem(fit)
|