Commit graph

131 commits

Author SHA1 Message Date
Viktor Klang
ee4a7ce76a Preparing mailbox-commons for bin compat 2012-05-23 16:27:30 +02:00
Viktor Klang
96c5c9392b Preparing the FileBasedMailbox for binary compatibility 2012-05-23 16:18:01 +02:00
Viktor Klang
3ba5db053a Merge branch 'master' into wip-2006-binary-compat-√ 2012-05-21 14:37:42 +02:00
patriknw
b9f7f4e4cc Merge pull request #452 from akka/wip-1755-protobuf-DaemonMsg-patriknw
Replace Java serialization of DaemonMsg by protobuf. See #1755
2012-05-21 01:40:43 -07:00
Viktor Klang
95db4bfd37 Moving out ConfigurationException from akka.config to akka 2012-05-16 17:04:13 +02:00
Patrik Nordwall
b70d7c6227 Reverted the change to serializeActorRef in DurableMessageSerialization. See #1755
* Discussed with Roland after seeing pull/457
2012-05-16 09:43:23 +02:00
Patrik Nordwall
8924080017 Create test-fixture for durable mailboxes. See #2061
* Improved DurableMailboxSpec for stand alone usage
* Changed build to publish DurableMailboxSpec in akka-mailboxes-common-test
* Changed documentation of durable mailboxes and added full example of
  how to implement a durable mailbox, with test
2012-05-15 16:11:00 +02:00
Patrik Nordwall
6dd017d6c1 Replace Java serialization of DaemonMsg by protobuf. See #1755
* Serializers for DaemonMsgCreate and DaemonMsgWatch
* Protobuf for DaemonMsgCreateProtocol, PropsProtocol,
  DeployProtocol, DaemonMsgWatchProtocol
* Removed unused MailboxProtocol.proto
* Fixed wrong serializeActorRef in DurableMessageSerialization
2012-05-15 10:50:05 +02:00
Viktor Klang
29df4a4702 Removing the community-maintained durable mailboxes, replacing the dep on commonsIo with the piece of code needed and switched to commonsIo for the FileBasedDurableMailboxSpec, also removed the amqp stubs, the spring stubs and other AkkaBuild residue 2012-05-08 15:07:05 +02:00
Viktor Klang
573892de94 Adding a multi-recipient test to the durable mailbox spec 2012-05-02 15:35:06 +02:00
Viktor Klang
42a80ec8b1 Adding more comprehensive tests for durable mailbox implementations 2012-05-02 14:43:06 +02:00
Roland
3699c6856e add docs for durMbx settings, see #1863 2012-03-05 17:48:38 +01:00
Roland
eaee16c7d3 include system.settings when constructing MailboxType, see #1864
- necessary to not have to construct one Settings object per
  MessageQueue
- added system.settings to DispatcherPrerequisites
2012-02-26 21:26:25 +01:00
Roland
b3dd85f6dd switch to dispatcher-scoped settings for durable mailboxes, see #1836
- also switch SBT settings to enable testing of durable mailboxes
  centrally (if so desired, just uncomment testMailbox line in build.sbt)
- automatically start mongod, beanstalkd or redis-server when running
  the respective tests (assumes that the binaries are in PATH)
- unify settings extraction from dispatcher config, sub-scoping by
  mailbox type name
2012-02-25 22:41:48 +01:00
Adam Lesperance
1cb657e02e Reword default config headers 2012-02-21 14:39:08 -06:00
Roland
2d765718cf Merge branch 'wip-1844-mailboxes-∂π' 2012-02-21 14:07:30 +01:00
Roland
882249c5cf rename durable mailboxes to message queues, see #1844
keep *MailboxType in order to not confuse users.
2012-02-21 13:40:05 +01:00
Roland
587950b863 fix BSONSerializer’s use of paths 2012-02-20 15:15:20 +01:00
Viktor Klang
b532211e71 Removing logging from MongoBasedMailbox and BSON serialization 2012-02-19 13:03:46 +01:00
Roland
2f3737195b split Mailbox and MessageQueue, see #1844
- this enables using any MessageQueue in BalancingDispatcher,
  CallingThreadDispatcher and in general leads to less conflation of
  concepts
- add MessageQueue.cleanUp(owner, deadLetterQueue) for the benefit of
  durable mailboxes
- change MailboxType.create to take an optional owner and generate only
  a MessageQueue, not a Mailbox
2012-02-19 10:28:56 +01:00
Viktor Klang
3a61b2f432 Removing durable mailbox logging 2012-02-16 21:58:02 +01:00
Roland
d2f28a06cd Merge remote-tracking branch 'origin/master' into wip-1750-remove-ReflectiveAccess-∂π 2012-02-10 11:41:47 +01:00
Jonas Bonér
51a218b87f Fixes ticket #1809 - Harmonize configuration option names.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-09 20:40:09 +01:00
Roland
2ce47d6bb5 Bye-bye ReflectiveAccess, introducing PropertyMaster, see #1750
- PropertyMaster is the only place in Akka which calls
  ClassLoader.getClass (apart from kernel, which might be special)
- all PropertyMaster methods (there are only three) take a ClassManifest
  of what is to be constructed, and they verify that the obtained object
  is actually compatible with the required type

Other stuff:
- noticed that I had forgotten to change to ExtendedActorSystem when
  constructing Extensions by ExtensionKey (damn you, reflection!)
- moved Serializer.currentSystem into JavaSerializer, because that’s the
  only one needing it (it’s only used in readResolve() methods)
- Serializers are constructed now with one-arg constructor taking
  ExtendedActorSystem (if that exists, otherwise no-arg as before), to
  allow JavaSerializer to do its magic; possibly necessary for others as
  well
- Removed all Option[ClassLoader] signatures
- made it so that the ActorSystem will try context class loader, then
  the class loader which loaded the class actually calling into
  ActorSystem.apply, then the loader which loaded ActorSystemImpl
- for the second of the above I added a (reflectively accessed hopefully
  safe) facility for getting caller Class[_] objects by using
  sun.reflect.Reflection; this is optional an defaults to None, e.g. on
  Android, which means that getting the caller’s classloader is done on
  a best effort basis (there’s nothing we can do because a StackTrace
  does not contain actual Class[_] objects).
- refactored DurableMailbox to contain the owner val and use that
  instead of declaring that in all subclasses
2012-02-09 11:56:43 +01:00
Patrik Nordwall
5033647176 Fixed things from review. See #1310 2012-02-01 17:38:12 +01:00
Patrik Nordwall
c447f46224 Some polish on the error handling. See #1310 2012-02-01 14:40:12 +01:00
Roland
4fb0858e55 remote cleanup: include feedback from Viktor and Patrik
- re-label Client/Server to Inbound/Outbound for netty settings
  description
- move to just using exactly one class loader for all reflective
  activities of the ActorSystem, which is either the context class
  loader or the one which loaded the ActorSystem’s class; document that
  putting Akka on boot class path will not work
- be more careful with initializing the Client- and ServerBootstrap
- rename Port to DesiredPortFromConfig to discourage misuse
- write test for NettySettings
- various small fixes
2012-01-30 11:57:24 +01:00
Roland
ac1ee9ae91 rework use of ClassLoaders, see #1736 2012-01-27 14:21:54 +01:00
Viktor Klang
08967d4149 Removing dead imports in durable mailboxes 2012-01-25 15:46:45 +01:00
Roland
d5c23bcb76 add ExtendedActorSystem to shield ActorSystemImpl
- add provider, guardian, systemGuardian and deathWatch to it
- make ActorSystemImpl extend ExtendedActorSystem
- use ExtendedActorSystem for creating extensions, thereby limiting the
  access extensions get to just those four published methods.
2012-01-24 11:33:40 +01:00
Viktor Klang
149fbea5a7 Updating Copyright as per #1660 2012-01-19 18:21:06 +01:00
Viktor Klang
1756b6aa54 FIXMEs, young grasshopper 2012-01-16 20:18:08 +01:00
Patrik Nordwall
9ec2bbe676 Fixed invalid dependencies in akka-remote, issue with log4j 1.2.15. See #1648 2012-01-16 14:32:14 +01:00
Patrik Nordwall
5ec89a4888 Activated ignored test and verified with profiler that the issue is gone. See #1423
* TestLatch and Await
* Cleanup of test
2012-01-01 12:14:05 +01:00
Roland
fa2440aeca Merge branch 'wip-1190-remote-DeathWatch-∂π' 2011-12-30 00:22:33 +01:00
Roland
0ed6a67e08 Remote DeathWatch (2): make it work
- introduce EmptyLocalActorRef, which is returned for unsuccessful
  look-ups of local scope
- this fixes the problem that actors—after their death—can still be
  looked up without losing their identity; otherwise behave like
  DeadLetterActorRef
- adapt tests accordingly
- make DeathWatchSpec reusable and build remote test from it
- remove several unused imports of LocalActorRef
- use LocalRef/RemoteRef in pattern matches where applicable: these are
  marker traits for a ref’s scope; InternalActorRef mandates a scope as
  per its self-type
2011-12-29 16:27:32 +01:00
Viktor Klang
519c8fb830 Removing unused import and DurableMailboxException from the DurableMailbox.scala 2011-12-28 12:43:48 +01:00
Viktor Klang
5ff8f4e2a4 Verifying serializability of messages when serialize is on 2011-12-27 16:25:26 +01:00
Patrik Nordwall
c4401f1ca8 Changed so that the configured FQCN of the mailboxType must be a MailboxType, not the Mailbox. See #1458 2011-12-21 19:37:18 +01:00
Patrik Nordwall
df260f8939 Improvements based on feedback. See #1458 2011-12-21 19:02:06 +01:00
Patrik Nordwall
f772b0183e Initial commit of dispatcher key refactoring, for review. See #1458
* Changed signatures and constructor of MessageDispatcherConfigurator
* Changed Dispatchers.lookup, keep configurators instead of dispatchers
* Removed most of the Dispatchers.newX methods, newDispatcher is still there because of priority mailbox
* How should we make it easy to configure priority mailbox?
* Changed tons tests
* Documentation and ScalaDoc is not updated yet
* Some tests in ActorModelSpec are temporary ignored due to failure
2011-12-21 13:27:50 +01:00
Patrik Nordwall
fb510d5018 Unwrap InvocationTargetException in ReflectiveAccess.createInstance. See #1555 2011-12-20 09:59:08 +01:00
Patrik Nordwall
5fd40e53ca Updates after feedback 2011-12-20 09:56:29 +01:00
Patrik Nordwall
83b08b20d9 Added CustomMailbox for user defined mailbox implementations with ActorContext instead of ActorCell.
* Mailbox is still there, with ActorCell, for internal use.
* Implemented durable mailboxes with CustomMailbox
2011-12-19 21:46:37 +01:00
Patrik Nordwall
61813c6635 Make MailboxType implementation configurable. See #1484
* Added mailboxType property to dispatcher config
* Changed durable mailboxes to use this
* Updated docs for durable mailboxes
2011-12-19 21:41:02 +01:00
Viktor Klang
6c96397711 Merge branch 'wip-1456-document-typed-actors-√' 2011-12-15 19:09:57 +01:00
Viktor Klang
5e03cda4bb Adding Typed Actor docs for Java, as well as some minor tweaks on some Java APIs 2011-12-15 16:57:29 +01:00
Jonas Bonér
ce296b0481 Misc additions to, and rewrites and formatting of, the documentation.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-12-15 14:26:17 +01:00
patriknw
d9e9efe2d7 Merge pull request #156 from jboner/wip-1504-config-comments-patriknw
Rewrite config comments
2011-12-14 08:47:19 -08:00
Viktor Klang
e959493e12 Enormous merge with master which probably led to the indirect unfortunate deaths of several kittens 2011-12-14 17:36:39 +01:00