hs-mesos 0.20.0.2 → 0.20.1.0
raw patch · 8 files changed
+881/−20 lines, 8 filesdep +template-haskellPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: template-haskell
API changes (from Hackage documentation)
- System.Mesos.Types: taskInfoName :: TaskInfo -> !ByteString
+ System.Mesos.Internal: makePrefixFields :: [Char] -> Name -> DecsQ
+ System.Mesos.Lens: _Aborted :: Prism' Status ()
+ System.Mesos.Lens: _CommandCheck :: Prism' HealthCheckStrategy CommandInfo
+ System.Mesos.Lens: _Docker :: Prism' ContainerType ByteString
+ System.Mesos.Lens: _Failed :: Prism' TaskState ()
+ System.Mesos.Lens: _Finished :: Prism' TaskState ()
+ System.Mesos.Lens: _HTTPCheck :: Prism' HealthCheckStrategy (Word32, Maybe ByteString, [Word32])
+ System.Mesos.Lens: _Killed :: Prism' TaskState ()
+ System.Mesos.Lens: _Lost :: Prism' TaskState ()
+ System.Mesos.Lens: _NotStarted :: Prism' Status ()
+ System.Mesos.Lens: _Ranges :: Prism' Value [(Word64, Word64)]
+ System.Mesos.Lens: _RawCommand :: Prism' CommandValue (ByteString, [ByteString])
+ System.Mesos.Lens: _ReadOnly :: Prism' Mode ()
+ System.Mesos.Lens: _ReadWrite :: Prism' Mode ()
+ System.Mesos.Lens: _Running :: Prism' Status ()
+ System.Mesos.Lens: _Scalar :: Prism' Value Double
+ System.Mesos.Lens: _Set :: Prism' Value [ByteString]
+ System.Mesos.Lens: _ShellCommand :: Prism' CommandValue ByteString
+ System.Mesos.Lens: _Staging :: Prism' TaskState ()
+ System.Mesos.Lens: _Starting :: Prism' TaskState ()
+ System.Mesos.Lens: _Stopped :: Prism' Status ()
+ System.Mesos.Lens: _TaskCommand :: Prism' TaskExecutionInfo CommandInfo
+ System.Mesos.Lens: _TaskExecutor :: Prism' TaskExecutionInfo ExecutorInfo
+ System.Mesos.Lens: _TaskRunning :: Prism' TaskState ()
+ System.Mesos.Lens: _Text :: Prism' Value ByteString
+ System.Mesos.Lens: _Unknown :: Prism' ContainerType Int
+ System.Mesos.Lens: alignmentFaults :: HasAlignmentFaults s a => Lens' s a
+ System.Mesos.Lens: attributes :: HasAttributes s a => Lens' s a
+ System.Mesos.Lens: branchLoadMisses :: HasBranchLoadMisses s a => Lens' s a
+ System.Mesos.Lens: branchLoads :: HasBranchLoads s a => Lens' s a
+ System.Mesos.Lens: branchMisses :: HasBranchMisses s a => Lens' s a
+ System.Mesos.Lens: branches :: HasBranches s a => Lens' s a
+ System.Mesos.Lens: busCycles :: HasBusCycles s a => Lens' s a
+ System.Mesos.Lens: cPUsLimit :: HasCPUsLimit s a => Lens' s a
+ System.Mesos.Lens: cPUsPeriods :: HasCPUsPeriods s a => Lens' s a
+ System.Mesos.Lens: cPUsThrottled :: HasCPUsThrottled s a => Lens' s a
+ System.Mesos.Lens: cPUsThrottledTimeSecs :: HasCPUsThrottledTimeSecs s a => Lens' s a
+ System.Mesos.Lens: cacheMisses :: HasCacheMisses s a => Lens' s a
+ System.Mesos.Lens: cacheReferences :: HasCacheReferences s a => Lens' s a
+ System.Mesos.Lens: checkCommand :: HasCheckCommand s a => Traversal' s a
+ System.Mesos.Lens: checkPath :: HasCheckPath s a => Traversal' s a
+ System.Mesos.Lens: checkPort :: HasCheckPort s a => Traversal' s a
+ System.Mesos.Lens: checkStatuses :: HasCheckStatuses s a => Traversal' s a
+ System.Mesos.Lens: checkpoint :: HasCheckpoint s a => Lens' s a
+ System.Mesos.Lens: class HasAlignmentFaults s a | s -> a
+ System.Mesos.Lens: class HasAttributes s a | s -> a
+ System.Mesos.Lens: class HasBranchLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasBranchLoads s a | s -> a
+ System.Mesos.Lens: class HasBranchMisses s a | s -> a
+ System.Mesos.Lens: class HasBranches s a | s -> a
+ System.Mesos.Lens: class HasBusCycles s a | s -> a
+ System.Mesos.Lens: class HasCPUsLimit s a | s -> a
+ System.Mesos.Lens: class HasCPUsPeriods s a | s -> a
+ System.Mesos.Lens: class HasCPUsThrottled s a | s -> a
+ System.Mesos.Lens: class HasCPUsThrottledTimeSecs s a | s -> a
+ System.Mesos.Lens: class HasCacheMisses s a | s -> a
+ System.Mesos.Lens: class HasCacheReferences s a | s -> a
+ System.Mesos.Lens: class HasCheckCommand s a | s -> a
+ System.Mesos.Lens: class HasCheckPath s a | s -> a
+ System.Mesos.Lens: class HasCheckPort s a | s -> a
+ System.Mesos.Lens: class HasCheckStatuses s a | s -> a
+ System.Mesos.Lens: class HasCheckpoint s a | s -> a
+ System.Mesos.Lens: class HasCommandInfo s a | s -> a
+ System.Mesos.Lens: class HasConsecutiveFailures s a | s -> a
+ System.Mesos.Lens: class HasContainer s a | s -> a
+ System.Mesos.Lens: class HasContainerID s a | s -> a
+ System.Mesos.Lens: class HasContainerInfo s a | s -> a
+ System.Mesos.Lens: class HasContainerPath s a | s -> a
+ System.Mesos.Lens: class HasContainerType s a | s -> a
+ System.Mesos.Lens: class HasContextSwitches s a | s -> a
+ System.Mesos.Lens: class HasCpuClock s a | s -> a
+ System.Mesos.Lens: class HasCpuMigrations s a | s -> a
+ System.Mesos.Lens: class HasCycles s a | s -> a
+ System.Mesos.Lens: class HasData s a | s -> a
+ System.Mesos.Lens: class HasDelaySeconds s a | s -> a
+ System.Mesos.Lens: class HasDtlbLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasDtlbLoads s a | s -> a
+ System.Mesos.Lens: class HasDtlbPrefetchMisses s a | s -> a
+ System.Mesos.Lens: class HasDtlbPrefetches s a | s -> a
+ System.Mesos.Lens: class HasDtlbStoreMisses s a | s -> a
+ System.Mesos.Lens: class HasDtlbStores s a | s -> a
+ System.Mesos.Lens: class HasDuration s a | s -> a
+ System.Mesos.Lens: class HasEmulationFaults s a | s -> a
+ System.Mesos.Lens: class HasEnvironment s a | s -> a
+ System.Mesos.Lens: class HasExecutable s a | s -> a
+ System.Mesos.Lens: class HasExecutorID s a | s -> a
+ System.Mesos.Lens: class HasExecutorIDs s a | s -> a
+ System.Mesos.Lens: class HasExtract s a | s -> a
+ System.Mesos.Lens: class HasFailoverTimeout s a | s -> a
+ System.Mesos.Lens: class HasFrameworkID s a | s -> a
+ System.Mesos.Lens: class HasGracePeriodSeconds s a | s -> a
+ System.Mesos.Lens: class HasHealthCheck s a | s -> a
+ System.Mesos.Lens: class HasHealthy s a | s -> a
+ System.Mesos.Lens: class HasHostPath s a | s -> a
+ System.Mesos.Lens: class HasHostname s a | s -> a
+ System.Mesos.Lens: class HasID s a | s -> a
+ System.Mesos.Lens: class HasIP s a | s -> a
+ System.Mesos.Lens: class HasImage s a | s -> a
+ System.Mesos.Lens: class HasImplementation s a | s -> a
+ System.Mesos.Lens: class HasInfoURIs s a | s -> a
+ System.Mesos.Lens: class HasInstructions s a | s -> a
+ System.Mesos.Lens: class HasIntervalSeconds s a | s -> a
+ System.Mesos.Lens: class HasItlbLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasItlbLoads s a | s -> a
+ System.Mesos.Lens: class HasL1DcacheLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasL1DcacheLoads s a | s -> a
+ System.Mesos.Lens: class HasL1DcachePrefetchMisses s a | s -> a
+ System.Mesos.Lens: class HasL1DcachePrefetches s a | s -> a
+ System.Mesos.Lens: class HasL1DcacheStoreMisses s a | s -> a
+ System.Mesos.Lens: class HasL1DcacheStores s a | s -> a
+ System.Mesos.Lens: class HasL1IcacheLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasL1IcacheLoads s a | s -> a
+ System.Mesos.Lens: class HasL1IcachePrefetchMisses s a | s -> a
+ System.Mesos.Lens: class HasL1IcachePrefetches s a | s -> a
+ System.Mesos.Lens: class HasLlcLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasLlcLoads s a | s -> a
+ System.Mesos.Lens: class HasLlcPrefetchMisses s a | s -> a
+ System.Mesos.Lens: class HasLlcPrefetches s a | s -> a
+ System.Mesos.Lens: class HasLlcStoreMisses s a | s -> a
+ System.Mesos.Lens: class HasLlcStores s a | s -> a
+ System.Mesos.Lens: class HasMajorFaults s a | s -> a
+ System.Mesos.Lens: class HasMemoryAnonymousBytes s a | s -> a
+ System.Mesos.Lens: class HasMemoryFileBytes s a | s -> a
+ System.Mesos.Lens: class HasMemoryLimitBytes s a | s -> a
+ System.Mesos.Lens: class HasMemoryMappedFileBytes s a | s -> a
+ System.Mesos.Lens: class HasMemoryResidentSetSize s a | s -> a
+ System.Mesos.Lens: class HasMessage s a | s -> a
+ System.Mesos.Lens: class HasMinorFaults s a | s -> a
+ System.Mesos.Lens: class HasMode s a | s -> a
+ System.Mesos.Lens: class HasName s a | s -> a
+ System.Mesos.Lens: class HasNetRxBytes s a | s -> a
+ System.Mesos.Lens: class HasNetRxDropped s a | s -> a
+ System.Mesos.Lens: class HasNetRxErrors s a | s -> a
+ System.Mesos.Lens: class HasNetRxPackets s a | s -> a
+ System.Mesos.Lens: class HasNetTxBytes s a | s -> a
+ System.Mesos.Lens: class HasNetTxDropped s a | s -> a
+ System.Mesos.Lens: class HasNetTxErrors s a | s -> a
+ System.Mesos.Lens: class HasNetTxPackets s a | s -> a
+ System.Mesos.Lens: class HasNodeLoadMisses s a | s -> a
+ System.Mesos.Lens: class HasNodeLoads s a | s -> a
+ System.Mesos.Lens: class HasNodePrefetchMisses s a | s -> a
+ System.Mesos.Lens: class HasNodePrefetches s a | s -> a
+ System.Mesos.Lens: class HasNodeStoreMisses s a | s -> a
+ System.Mesos.Lens: class HasNodeStores s a | s -> a
+ System.Mesos.Lens: class HasOfferID s a | s -> a
+ System.Mesos.Lens: class HasPID s a | s -> a
+ System.Mesos.Lens: class HasPageFaults s a | s -> a
+ System.Mesos.Lens: class HasPerformanceStatistics s a | s -> a
+ System.Mesos.Lens: class HasPort s a | s -> a
+ System.Mesos.Lens: class HasPrincipal s a | s -> a
+ System.Mesos.Lens: class HasRefCycles s a | s -> a
+ System.Mesos.Lens: class HasResources s a | s -> a
+ System.Mesos.Lens: class HasRole s a | s -> a
+ System.Mesos.Lens: class HasSecret s a | s -> a
+ System.Mesos.Lens: class HasSlaveID s a | s -> a
+ System.Mesos.Lens: class HasSource s a | s -> a
+ System.Mesos.Lens: class HasStalledCyclesBackend s a | s -> a
+ System.Mesos.Lens: class HasStalledCyclesFrontend s a | s -> a
+ System.Mesos.Lens: class HasState s a | s -> a
+ System.Mesos.Lens: class HasStatisticsCPUsSystemTimeSecs s a | s -> a
+ System.Mesos.Lens: class HasStatisticsCPUsUserTimeSecs s a | s -> a
+ System.Mesos.Lens: class HasStatisticsTimestamp s a | s -> a
+ System.Mesos.Lens: class HasStrategy s a | s -> a
+ System.Mesos.Lens: class HasTaskClock s a | s -> a
+ System.Mesos.Lens: class HasTaskID s a | s -> a
+ System.Mesos.Lens: class HasTimeoutSeconds s a | s -> a
+ System.Mesos.Lens: class HasTimestamp s a | s -> a
+ System.Mesos.Lens: class HasUsageExecutorID s a | s -> a
+ System.Mesos.Lens: class HasUsageExecutorName s a | s -> a
+ System.Mesos.Lens: class HasUsageFrameworkID s a | s -> a
+ System.Mesos.Lens: class HasUsageSlaveID s a | s -> a
+ System.Mesos.Lens: class HasUsageStatistics s a | s -> a
+ System.Mesos.Lens: class HasUsageTaskID s a | s -> a
+ System.Mesos.Lens: class HasUser s a | s -> a
+ System.Mesos.Lens: class HasValue s a | s -> a
+ System.Mesos.Lens: class HasVolumes s a | s -> a
+ System.Mesos.Lens: commandInfo :: HasCommandInfo s a => Lens' s a
+ System.Mesos.Lens: consecutiveFailures :: HasConsecutiveFailures s a => Lens' s a
+ System.Mesos.Lens: container :: HasContainer s a => Lens' s a
+ System.Mesos.Lens: containerID :: HasContainerID s a => Lens' s a
+ System.Mesos.Lens: containerInfo :: HasContainerInfo s a => Lens' s a
+ System.Mesos.Lens: containerPath :: HasContainerPath s a => Lens' s a
+ System.Mesos.Lens: containerType :: HasContainerType s a => Lens' s a
+ System.Mesos.Lens: contextSwitches :: HasContextSwitches s a => Lens' s a
+ System.Mesos.Lens: cpuClock :: HasCpuClock s a => Lens' s a
+ System.Mesos.Lens: cpuMigrations :: HasCpuMigrations s a => Lens' s a
+ System.Mesos.Lens: cycles :: HasCycles s a => Lens' s a
+ System.Mesos.Lens: data :: HasData s a => Lens' s a
+ System.Mesos.Lens: delaySeconds :: HasDelaySeconds s a => Lens' s a
+ System.Mesos.Lens: dtlbLoadMisses :: HasDtlbLoadMisses s a => Lens' s a
+ System.Mesos.Lens: dtlbLoads :: HasDtlbLoads s a => Lens' s a
+ System.Mesos.Lens: dtlbPrefetchMisses :: HasDtlbPrefetchMisses s a => Lens' s a
+ System.Mesos.Lens: dtlbPrefetches :: HasDtlbPrefetches s a => Lens' s a
+ System.Mesos.Lens: dtlbStoreMisses :: HasDtlbStoreMisses s a => Lens' s a
+ System.Mesos.Lens: dtlbStores :: HasDtlbStores s a => Lens' s a
+ System.Mesos.Lens: duration :: HasDuration s a => Lens' s a
+ System.Mesos.Lens: emulationFaults :: HasEmulationFaults s a => Lens' s a
+ System.Mesos.Lens: environment :: HasEnvironment s a => Lens' s a
+ System.Mesos.Lens: executable :: HasExecutable s a => Lens' s a
+ System.Mesos.Lens: executorID :: HasExecutorID s a => Lens' s a
+ System.Mesos.Lens: executorIDs :: HasExecutorIDs s a => Lens' s a
+ System.Mesos.Lens: extract :: HasExtract s a => Lens' s a
+ System.Mesos.Lens: failoverTimeout :: HasFailoverTimeout s a => Lens' s a
+ System.Mesos.Lens: frameworkID :: HasFrameworkID s a => Lens' s a
+ System.Mesos.Lens: gracePeriodSeconds :: HasGracePeriodSeconds s a => Lens' s a
+ System.Mesos.Lens: healthCheck :: HasHealthCheck s a => Lens' s a
+ System.Mesos.Lens: healthy :: HasHealthy s a => Lens' s a
+ System.Mesos.Lens: hostPath :: HasHostPath s a => Lens' s a
+ System.Mesos.Lens: hostname :: HasHostname s a => Lens' s a
+ System.Mesos.Lens: iD :: HasID s a => Lens' s a
+ System.Mesos.Lens: iP :: HasIP s a => Lens' s a
+ System.Mesos.Lens: image :: HasImage s a => Traversal' s a
+ System.Mesos.Lens: implementation :: HasImplementation s a => Lens' s a
+ System.Mesos.Lens: infoURIs :: HasInfoURIs s a => Lens' s a
+ System.Mesos.Lens: instance HasAlignmentFaults PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasAttributes Offer [(ByteString, Value)]
+ System.Mesos.Lens: instance HasAttributes SlaveInfo [(ByteString, Value)]
+ System.Mesos.Lens: instance HasBranchLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasBranchLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasBranchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasBranches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasBusCycles PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasCPUsLimit ResourceStatistics Double
+ System.Mesos.Lens: instance HasCPUsPeriods ResourceStatistics (Maybe Word32)
+ System.Mesos.Lens: instance HasCPUsThrottled ResourceStatistics (Maybe Word32)
+ System.Mesos.Lens: instance HasCPUsThrottledTimeSecs ResourceStatistics (Maybe Double)
+ System.Mesos.Lens: instance HasCacheMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasCacheReferences PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasCheckCommand HealthCheckStrategy CommandInfo
+ System.Mesos.Lens: instance HasCheckPath HealthCheckStrategy (Maybe ByteString)
+ System.Mesos.Lens: instance HasCheckPort HealthCheckStrategy Word32
+ System.Mesos.Lens: instance HasCheckStatuses HealthCheckStrategy [Word32]
+ System.Mesos.Lens: instance HasCheckpoint FrameworkInfo (Maybe Bool)
+ System.Mesos.Lens: instance HasCheckpoint SlaveInfo (Maybe Bool)
+ System.Mesos.Lens: instance HasCommandInfo ExecutorInfo CommandInfo
+ System.Mesos.Lens: instance HasConsecutiveFailures HealthCheck (Maybe Word32)
+ System.Mesos.Lens: instance HasContainer TaskInfo (Maybe ContainerInfo)
+ System.Mesos.Lens: instance HasContainerID ContainerID ByteString
+ System.Mesos.Lens: instance HasContainerInfo ExecutorInfo (Maybe ContainerInfo)
+ System.Mesos.Lens: instance HasContainerPath Volume ByteString
+ System.Mesos.Lens: instance HasContainerType ContainerInfo ContainerType
+ System.Mesos.Lens: instance HasContextSwitches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasCpuClock PerformanceStatistics (Maybe Double)
+ System.Mesos.Lens: instance HasCpuMigrations PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasCycles PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasData ExecutorInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasData TaskInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasData TaskStatus (Maybe ByteString)
+ System.Mesos.Lens: instance HasDelaySeconds HealthCheck (Maybe Double)
+ System.Mesos.Lens: instance HasDtlbLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDtlbLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDtlbPrefetchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDtlbPrefetches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDtlbStoreMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDtlbStores PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasDuration PerformanceStatistics Double
+ System.Mesos.Lens: instance HasEmulationFaults PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasEnvironment CommandInfo (Maybe [(ByteString, ByteString)])
+ System.Mesos.Lens: instance HasExecutable CommandURI (Maybe Bool)
+ System.Mesos.Lens: instance HasExecutorID ExecutorID ByteString
+ System.Mesos.Lens: instance HasExecutorID ExecutorInfo ExecutorID
+ System.Mesos.Lens: instance HasExecutorID TaskStatus (Maybe ExecutorID)
+ System.Mesos.Lens: instance HasExecutorIDs Offer [ExecutorID]
+ System.Mesos.Lens: instance HasExtract CommandURI (Maybe Bool)
+ System.Mesos.Lens: instance HasFailoverTimeout FrameworkInfo (Maybe Double)
+ System.Mesos.Lens: instance HasFrameworkID ExecutorInfo FrameworkID
+ System.Mesos.Lens: instance HasFrameworkID FrameworkID ByteString
+ System.Mesos.Lens: instance HasFrameworkID Offer FrameworkID
+ System.Mesos.Lens: instance HasGracePeriodSeconds HealthCheck (Maybe Double)
+ System.Mesos.Lens: instance HasHealthCheck TaskInfo (Maybe HealthCheck)
+ System.Mesos.Lens: instance HasHealthy TaskStatus (Maybe Bool)
+ System.Mesos.Lens: instance HasHostPath Volume (Maybe ByteString)
+ System.Mesos.Lens: instance HasHostname FrameworkInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasHostname MasterInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasHostname Offer ByteString
+ System.Mesos.Lens: instance HasHostname SlaveInfo ByteString
+ System.Mesos.Lens: instance HasID FrameworkInfo (Maybe FrameworkID)
+ System.Mesos.Lens: instance HasID MasterInfo ByteString
+ System.Mesos.Lens: instance HasID Offer OfferID
+ System.Mesos.Lens: instance HasID TaskInfo TaskID
+ System.Mesos.Lens: instance HasIP MasterInfo Word32
+ System.Mesos.Lens: instance HasImage ContainerType ByteString
+ System.Mesos.Lens: instance HasImplementation TaskInfo TaskExecutionInfo
+ System.Mesos.Lens: instance HasInfoURIs CommandInfo [CommandURI]
+ System.Mesos.Lens: instance HasInstructions PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasIntervalSeconds HealthCheck (Maybe Double)
+ System.Mesos.Lens: instance HasItlbLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasItlbLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcacheLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcacheLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcachePrefetchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcachePrefetches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcacheStoreMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1DcacheStores PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1IcacheLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1IcacheLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1IcachePrefetchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasL1IcachePrefetches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcPrefetchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcPrefetches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcStoreMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasLlcStores PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMajorFaults PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMemoryAnonymousBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMemoryFileBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMemoryLimitBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMemoryMappedFileBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMemoryResidentSetSize ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMessage TaskStatus (Maybe ByteString)
+ System.Mesos.Lens: instance HasMinorFaults PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasMode Volume Mode
+ System.Mesos.Lens: instance HasName ExecutorInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasName FrameworkInfo ByteString
+ System.Mesos.Lens: instance HasName Resource ByteString
+ System.Mesos.Lens: instance HasName TaskInfo ByteString
+ System.Mesos.Lens: instance HasNetRxBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetRxDropped ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetRxErrors ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetRxPackets ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetTxBytes ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetTxDropped ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetTxErrors ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNetTxPackets ResourceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodeLoadMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodeLoads PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodePrefetchMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodePrefetches PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodeStoreMisses PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasNodeStores PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasOfferID OfferID ByteString
+ System.Mesos.Lens: instance HasPID MasterInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasPageFaults PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasPerformanceStatistics ResourceStatistics (Maybe PerformanceStatistics)
+ System.Mesos.Lens: instance HasPort MasterInfo (Maybe Word32)
+ System.Mesos.Lens: instance HasPort SlaveInfo (Maybe Word32)
+ System.Mesos.Lens: instance HasPrincipal Credential ByteString
+ System.Mesos.Lens: instance HasPrincipal FrameworkInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasRefCycles PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasResources ExecutorInfo [Resource]
+ System.Mesos.Lens: instance HasResources Offer [Resource]
+ System.Mesos.Lens: instance HasResources Request [Resource]
+ System.Mesos.Lens: instance HasResources SlaveInfo [Resource]
+ System.Mesos.Lens: instance HasResources TaskInfo [Resource]
+ System.Mesos.Lens: instance HasRole FrameworkInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasRole Resource (Maybe ByteString)
+ System.Mesos.Lens: instance HasSecret Credential (Maybe ByteString)
+ System.Mesos.Lens: instance HasSlaveID Offer SlaveID
+ System.Mesos.Lens: instance HasSlaveID Request (Maybe SlaveID)
+ System.Mesos.Lens: instance HasSlaveID SlaveID ByteString
+ System.Mesos.Lens: instance HasSlaveID SlaveInfo (Maybe SlaveID)
+ System.Mesos.Lens: instance HasSlaveID TaskInfo SlaveID
+ System.Mesos.Lens: instance HasSlaveID TaskStatus (Maybe SlaveID)
+ System.Mesos.Lens: instance HasSource ExecutorInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasStalledCyclesBackend PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasStalledCyclesFrontend PerformanceStatistics (Maybe Word64)
+ System.Mesos.Lens: instance HasState TaskStatus TaskState
+ System.Mesos.Lens: instance HasStatisticsCPUsSystemTimeSecs ResourceStatistics (Maybe Double)
+ System.Mesos.Lens: instance HasStatisticsCPUsUserTimeSecs ResourceStatistics (Maybe Double)
+ System.Mesos.Lens: instance HasStatisticsTimestamp ResourceStatistics Double
+ System.Mesos.Lens: instance HasStrategy HealthCheck HealthCheckStrategy
+ System.Mesos.Lens: instance HasTaskClock PerformanceStatistics (Maybe Double)
+ System.Mesos.Lens: instance HasTaskID TaskID ByteString
+ System.Mesos.Lens: instance HasTaskID TaskStatus TaskID
+ System.Mesos.Lens: instance HasTimeoutSeconds HealthCheck (Maybe Double)
+ System.Mesos.Lens: instance HasTimestamp PerformanceStatistics Double
+ System.Mesos.Lens: instance HasTimestamp TaskStatus (Maybe Double)
+ System.Mesos.Lens: instance HasUsageExecutorID ResourceUsage (Maybe ExecutorID)
+ System.Mesos.Lens: instance HasUsageExecutorName ResourceUsage (Maybe ByteString)
+ System.Mesos.Lens: instance HasUsageFrameworkID ResourceUsage FrameworkID
+ System.Mesos.Lens: instance HasUsageSlaveID ResourceUsage SlaveID
+ System.Mesos.Lens: instance HasUsageStatistics ResourceUsage (Maybe ResourceStatistics)
+ System.Mesos.Lens: instance HasUsageTaskID ResourceUsage (Maybe TaskID)
+ System.Mesos.Lens: instance HasUser CommandInfo (Maybe ByteString)
+ System.Mesos.Lens: instance HasUser FrameworkInfo ByteString
+ System.Mesos.Lens: instance HasValue CommandInfo CommandValue
+ System.Mesos.Lens: instance HasValue CommandURI ByteString
+ System.Mesos.Lens: instance HasValue Resource Value
+ System.Mesos.Lens: instance HasVolumes ContainerInfo [Volume]
+ System.Mesos.Lens: instructions :: HasInstructions s a => Lens' s a
+ System.Mesos.Lens: intervalSeconds :: HasIntervalSeconds s a => Lens' s a
+ System.Mesos.Lens: itlbLoadMisses :: HasItlbLoadMisses s a => Lens' s a
+ System.Mesos.Lens: itlbLoads :: HasItlbLoads s a => Lens' s a
+ System.Mesos.Lens: l1DcacheLoadMisses :: HasL1DcacheLoadMisses s a => Lens' s a
+ System.Mesos.Lens: l1DcacheLoads :: HasL1DcacheLoads s a => Lens' s a
+ System.Mesos.Lens: l1DcachePrefetchMisses :: HasL1DcachePrefetchMisses s a => Lens' s a
+ System.Mesos.Lens: l1DcachePrefetches :: HasL1DcachePrefetches s a => Lens' s a
+ System.Mesos.Lens: l1DcacheStoreMisses :: HasL1DcacheStoreMisses s a => Lens' s a
+ System.Mesos.Lens: l1DcacheStores :: HasL1DcacheStores s a => Lens' s a
+ System.Mesos.Lens: l1IcacheLoadMisses :: HasL1IcacheLoadMisses s a => Lens' s a
+ System.Mesos.Lens: l1IcacheLoads :: HasL1IcacheLoads s a => Lens' s a
+ System.Mesos.Lens: l1IcachePrefetchMisses :: HasL1IcachePrefetchMisses s a => Lens' s a
+ System.Mesos.Lens: l1IcachePrefetches :: HasL1IcachePrefetches s a => Lens' s a
+ System.Mesos.Lens: llcLoadMisses :: HasLlcLoadMisses s a => Lens' s a
+ System.Mesos.Lens: llcLoads :: HasLlcLoads s a => Lens' s a
+ System.Mesos.Lens: llcPrefetchMisses :: HasLlcPrefetchMisses s a => Lens' s a
+ System.Mesos.Lens: llcPrefetches :: HasLlcPrefetches s a => Lens' s a
+ System.Mesos.Lens: llcStoreMisses :: HasLlcStoreMisses s a => Lens' s a
+ System.Mesos.Lens: llcStores :: HasLlcStores s a => Lens' s a
+ System.Mesos.Lens: majorFaults :: HasMajorFaults s a => Lens' s a
+ System.Mesos.Lens: memoryAnonymousBytes :: HasMemoryAnonymousBytes s a => Lens' s a
+ System.Mesos.Lens: memoryFileBytes :: HasMemoryFileBytes s a => Lens' s a
+ System.Mesos.Lens: memoryLimitBytes :: HasMemoryLimitBytes s a => Lens' s a
+ System.Mesos.Lens: memoryMappedFileBytes :: HasMemoryMappedFileBytes s a => Lens' s a
+ System.Mesos.Lens: memoryResidentSetSize :: HasMemoryResidentSetSize s a => Lens' s a
+ System.Mesos.Lens: message :: HasMessage s a => Lens' s a
+ System.Mesos.Lens: minorFaults :: HasMinorFaults s a => Lens' s a
+ System.Mesos.Lens: mode :: HasMode s a => Lens' s a
+ System.Mesos.Lens: name :: HasName s a => Lens' s a
+ System.Mesos.Lens: netRxBytes :: HasNetRxBytes s a => Lens' s a
+ System.Mesos.Lens: netRxDropped :: HasNetRxDropped s a => Lens' s a
+ System.Mesos.Lens: netRxErrors :: HasNetRxErrors s a => Lens' s a
+ System.Mesos.Lens: netRxPackets :: HasNetRxPackets s a => Lens' s a
+ System.Mesos.Lens: netTxBytes :: HasNetTxBytes s a => Lens' s a
+ System.Mesos.Lens: netTxDropped :: HasNetTxDropped s a => Lens' s a
+ System.Mesos.Lens: netTxErrors :: HasNetTxErrors s a => Lens' s a
+ System.Mesos.Lens: netTxPackets :: HasNetTxPackets s a => Lens' s a
+ System.Mesos.Lens: nodeLoadMisses :: HasNodeLoadMisses s a => Lens' s a
+ System.Mesos.Lens: nodeLoads :: HasNodeLoads s a => Lens' s a
+ System.Mesos.Lens: nodePrefetchMisses :: HasNodePrefetchMisses s a => Lens' s a
+ System.Mesos.Lens: nodePrefetches :: HasNodePrefetches s a => Lens' s a
+ System.Mesos.Lens: nodeStoreMisses :: HasNodeStoreMisses s a => Lens' s a
+ System.Mesos.Lens: nodeStores :: HasNodeStores s a => Lens' s a
+ System.Mesos.Lens: offerID :: HasOfferID s a => Lens' s a
+ System.Mesos.Lens: pID :: HasPID s a => Lens' s a
+ System.Mesos.Lens: pageFaults :: HasPageFaults s a => Lens' s a
+ System.Mesos.Lens: performanceStatistics :: HasPerformanceStatistics s a => Lens' s a
+ System.Mesos.Lens: port :: HasPort s a => Lens' s a
+ System.Mesos.Lens: principal :: HasPrincipal s a => Lens' s a
+ System.Mesos.Lens: refCycles :: HasRefCycles s a => Lens' s a
+ System.Mesos.Lens: resources :: HasResources s a => Lens' s a
+ System.Mesos.Lens: role :: HasRole s a => Lens' s a
+ System.Mesos.Lens: secret :: HasSecret s a => Lens' s a
+ System.Mesos.Lens: slaveID :: HasSlaveID s a => Lens' s a
+ System.Mesos.Lens: source :: HasSource s a => Lens' s a
+ System.Mesos.Lens: stalledCyclesBackend :: HasStalledCyclesBackend s a => Lens' s a
+ System.Mesos.Lens: stalledCyclesFrontend :: HasStalledCyclesFrontend s a => Lens' s a
+ System.Mesos.Lens: state :: HasState s a => Lens' s a
+ System.Mesos.Lens: statisticsCPUsSystemTimeSecs :: HasStatisticsCPUsSystemTimeSecs s a => Lens' s a
+ System.Mesos.Lens: statisticsCPUsUserTimeSecs :: HasStatisticsCPUsUserTimeSecs s a => Lens' s a
+ System.Mesos.Lens: statisticsTimestamp :: HasStatisticsTimestamp s a => Lens' s a
+ System.Mesos.Lens: strategy :: HasStrategy s a => Lens' s a
+ System.Mesos.Lens: taskClock :: HasTaskClock s a => Lens' s a
+ System.Mesos.Lens: taskID :: HasTaskID s a => Lens' s a
+ System.Mesos.Lens: timeoutSeconds :: HasTimeoutSeconds s a => Lens' s a
+ System.Mesos.Lens: timestamp :: HasTimestamp s a => Lens' s a
+ System.Mesos.Lens: usageExecutorID :: HasUsageExecutorID s a => Lens' s a
+ System.Mesos.Lens: usageExecutorName :: HasUsageExecutorName s a => Lens' s a
+ System.Mesos.Lens: usageFrameworkID :: HasUsageFrameworkID s a => Lens' s a
+ System.Mesos.Lens: usageSlaveID :: HasUsageSlaveID s a => Lens' s a
+ System.Mesos.Lens: usageStatistics :: HasUsageStatistics s a => Lens' s a
+ System.Mesos.Lens: usageTaskID :: HasUsageTaskID s a => Lens' s a
+ System.Mesos.Lens: user :: HasUser s a => Lens' s a
+ System.Mesos.Lens: value :: HasValue s a => Lens' s a
+ System.Mesos.Lens: volumes :: HasVolumes s a => Lens' s a
+ System.Mesos.Types: taskName :: TaskInfo -> !ByteString
Files
- ext/types.h +798/−0
- hs-mesos.cabal +6/−4
- src/System/Mesos/Internal.hs +21/−7
- src/System/Mesos/Lens.hs +47/−0
- src/System/Mesos/Raw/TaskInfo.hs +1/−1
- src/System/Mesos/Types.hs +1/−1
- test/TestExecutor.hs +6/−6
- test/TestFramework.hs +1/−1
+ ext/types.h view
@@ -0,0 +1,798 @@+#include <mesos/mesos.hpp>++// some_header_file.h+#ifndef HS_MESOS_WRAPPERS+#define HS_MESOS_WRAPPERS++typedef mesos::FrameworkID *FrameworkIDPtr;+typedef mesos::OfferID *OfferIDPtr;+typedef mesos::SlaveID *SlaveIDPtr;+typedef mesos::TaskID *TaskIDPtr;+typedef mesos::ExecutorID *ExecutorIDPtr;+typedef mesos::ContainerID *ContainerIDPtr;+typedef mesos::FrameworkInfo *FrameworkInfoPtr;+typedef mesos::CommandInfo *CommandInfoPtr;+typedef mesos::CommandInfo_URI *CommandInfo_URIPtr;+typedef mesos::ExecutorInfo *ExecutorInfoPtr;+typedef mesos::MasterInfo *MasterInfoPtr;+typedef mesos::SlaveInfo *SlaveInfoPtr;+typedef mesos::Value *ValuePtr;+typedef mesos::Value_Scalar *Value_ScalarPtr;+typedef mesos::Value_Range *ValueRangePtr;+typedef mesos::Value_Ranges *Value_RangesPtr;+typedef mesos::Value_Set *Value_SetPtr;+typedef mesos::Value_Text *Value_TextPtr;+typedef mesos::Attribute *AttributePtr;+typedef mesos::Resource *ResourcePtr;+typedef mesos::ResourceStatistics *ResourceStatisticsPtr;+typedef mesos::ResourceUsage *ResourceUsagePtr;+typedef mesos::Request *RequestPtr;+typedef mesos::Offer *OfferPtr;+typedef mesos::TaskInfo *TaskInfoPtr;+typedef mesos::TaskStatus *TaskStatusPtr;+typedef mesos::Filters *FiltersPtr;+typedef mesos::Environment *EnvironmentPtr;+typedef mesos::Environment_Variable *EnvironmentVariablePtr;+typedef mesos::Parameter *ParameterPtr;+typedef mesos::Parameters *ParametersPtr;+typedef mesos::Credential *CredentialPtr;+typedef mesos::CommandInfo_URI *CommandURIPtr;+typedef mesos::HealthCheck *HealthCheckPtr;+typedef mesos::ContainerInfo *ContainerInfoPtr;+typedef mesos::PerfStatistics *PerfStatisticsPtr;+typedef mesos::Volume *VolumePtr;+typedef mesos::ContainerInfo *ContainerInfoPtr;+typedef std::string *StdStringPtr;++extern "C" {++ extern FrameworkIDPtr toFrameworkID(char* bs, int len);++ extern int fromFrameworkID(FrameworkIDPtr p, char** poke);++ extern void destroyFrameworkID(FrameworkIDPtr p);++ extern OfferIDPtr toOfferID(char* bs, int len);++ extern int fromOfferID(OfferIDPtr p, char** poke);++ extern void destroyOfferID(OfferIDPtr p);++ extern SlaveIDPtr toSlaveID(char* bs, int len);++ extern int fromSlaveID(SlaveIDPtr p, char** poke);++ extern void destroySlaveID(SlaveIDPtr p);++ extern TaskIDPtr toTaskID(char* bs, int len);++ extern int fromTaskID(TaskIDPtr p, char** poke);++ extern void destroyTaskID(TaskIDPtr p);++ extern ExecutorIDPtr toExecutorID(char* bs, int len);++ extern int fromExecutorID(ExecutorIDPtr p, char** poke);++ extern void destroyExecutorID(ExecutorIDPtr p);++ extern ContainerIDPtr toContainerID(char* bs, int len);++ extern int fromContainerID(ContainerIDPtr p, char** poke);++ extern void destroyContainerID(ContainerIDPtr p);++ extern FrameworkInfoPtr toFrameworkInfo(char* user,+ int userLen,+ char* name,+ int nameLen,+ FrameworkIDPtr* frameworkID,+ double* failoverTimeout,+ bool* checkpoint,+ char* role,+ int roleLen,+ char* hostname,+ int hostLen,+ char* principal,+ int principalLen);++ extern void fromFrameworkInfo(FrameworkInfoPtr info,+ char** user,+ int* userLen,+ char** name,+ int* nameLen,+ FrameworkIDPtr* frameworkID,+ bool* failoverSet,+ double* failoverTimeout,+ bool* checkpointSet,+ bool* checkpoint,+ char** role,+ int* roleLen,+ char** hostname,+ int* hostLen,+ char** principal,+ int* principalLen);++ extern void destroyFrameworkInfo(FrameworkInfoPtr info);++ extern CommandURIPtr toCommandURI(char* cmd,+ int cmdLen,+ bool* executable,+ bool* extract);++ extern void fromCommandURI(CommandURIPtr commandURI,+ char** cmd,+ int* cmdLen,+ bool* executableSet,+ bool* executable,+ bool* extractSet,+ bool* extract);++ extern void destroyCommandURI(CommandURIPtr commandURI);++ extern MasterInfoPtr toMasterInfo(char* infoID,+ int infoIDLen,+ unsigned int infoIP,+ unsigned int* infoPort,+ char* pid,+ int pidLen,+ char* hostname,+ int hostnameLen);++ extern void fromMasterInfo(MasterInfoPtr info,+ char** infoID,+ int* infoIDLen,+ unsigned int* infoIP,+ unsigned int* infoPort,+ char** pid,+ int* pidLen,+ char** hostname,+ int* hostnameLen);++ extern void destroyMasterInfo(MasterInfoPtr info);+ + extern SlaveInfoPtr toSlaveInfo(char* hostname,+ int hostnameLen,+ unsigned int* port,+ ResourcePtr* resources,+ int resourcesLen,+ AttributePtr* attributes,+ int attributeLen,+ SlaveIDPtr slaveID,+ bool* checkpoint);++ extern void fromSlaveInfo(SlaveInfoPtr slaveInfo,+ char** hostname,+ int* hostnameLen,+ bool* portSet,+ unsigned int* port,+ ResourcePtr** resources,+ int* resourcesLen,+ AttributePtr** attributes,+ int* attributeLen,+ SlaveIDPtr* slaveID,+ bool* checkpointSet,+ bool* checkpoint);++ extern void destroySlaveInfo(SlaveInfoPtr slaveInfo);++ extern OfferPtr toOffer(OfferIDPtr offerID,+ FrameworkIDPtr frameworkID,+ SlaveIDPtr slaveID,+ char* hostname,+ int hostnameLen,+ ResourcePtr* resources,+ int resourceLen,+ AttributePtr* attributes,+ int attributeLen,+ ExecutorIDPtr* executors,+ int executorLen);++ extern void fromOffer(OfferPtr offer,+ OfferIDPtr* offerID,+ FrameworkIDPtr* frameworkID,+ SlaveIDPtr* slaveID,+ char** hostname,+ int* hostnameLen,+ ResourcePtr** resources,+ int* resourceLen,+ AttributePtr** attributes,+ int* attributeLen,+ ExecutorIDPtr** executors,+ int* executorLen);++ extern void destroyOffer(OfferPtr offer);++ extern TaskInfoPtr toTaskInfo(char* infoName,+ int infoNameLen,+ TaskIDPtr taskID,+ SlaveIDPtr slaveID,+ ResourcePtr* resources,+ int resourcesLen,+ ExecutorInfoPtr executorInfo,+ CommandInfoPtr commandInfo,+ char* data,+ int dataLen,+ ContainerInfoPtr containerInfo,+ HealthCheckPtr healthCheck+ );++ extern void fromTaskInfo(TaskInfoPtr taskInfo,+ char** infoName,+ int* infoNameLen,+ TaskIDPtr* taskID,+ SlaveIDPtr* slaveID,+ ResourcePtr** resources,+ int* resourcesLen,+ ExecutorInfoPtr* executorInfo,+ CommandInfoPtr* commandInfo,+ char** data,+ int* dataLen,+ ContainerInfoPtr* containerInfo,+ HealthCheckPtr* healthCheck+ );++ extern void destroyTaskInfo(TaskInfoPtr taskInfo);+ + extern TaskStatusPtr toTaskStatus(TaskIDPtr taskID,+ int state,+ char* message,+ int messageLen,+ char* data,+ int dataLen,+ SlaveIDPtr slaveID,+ ExecutorIDPtr executorID,+ double* timestamp,+ bool* healthCheck);++ extern void fromTaskStatus(TaskStatusPtr status,+ TaskIDPtr* taskID,+ int* state,+ char** message,+ int* messageLen,+ char** data,+ int* dataLen,+ SlaveIDPtr* slaveID,+ ExecutorIDPtr* executorID,+ bool* timestampSet,+ double* timestamp,+ bool* healthCheckSet,+ bool* healthCheck);++ extern void destroyTaskStatus(TaskStatusPtr taskStatus); ++ extern FiltersPtr toFilters(double* refuseSeconds);++ extern void fromFilters(FiltersPtr filters,+ bool* refusalSet,+ double* refuseSeconds);++ extern void destroyFilters(FiltersPtr filters);++ extern EnvironmentVariablePtr toEnvironmentVariable(char* key,+ int keyLen,+ char* value,+ int valueLen);++ extern void fromEnvironmentVariable(EnvironmentVariablePtr var,+ char** key,+ int* keyLen,+ char** value,+ int* valueLen);++ extern void destroyEnvironmentVariable(EnvironmentVariablePtr env);+++ extern EnvironmentPtr toEnvironment(EnvironmentVariablePtr* env,+ int envLen);++ extern void fromEnvironment(EnvironmentPtr env,+ EnvironmentVariablePtr** variables,+ int* envLen);++ extern void destroyEnvironment(EnvironmentPtr env);++ extern CredentialPtr toCredential(char* principal,+ int principalLen,+ char* secret,+ int secretLen);++ extern void fromCredential(+ CredentialPtr credential,+ char** principal,+ int* principalLen,+ char** secret,+ int* secretLen);++ extern void destroyCredential(CredentialPtr credential);++ extern ResourcePtr toResource(char* name,+ int nameLen,+ ValuePtr value,+ char* role,+ int roleLen);++ extern void fromResource(ResourcePtr resource,+ char** name,+ int* nameLen,+ ValuePtr* value,+ char** role,+ int* roleLen);++ extern void destroyResource(ResourcePtr resource);++ extern ExecutorInfoPtr toExecutorInfo(ExecutorIDPtr executorID,+ FrameworkIDPtr frameworkID,+ CommandInfoPtr commandInfo,+ ContainerInfoPtr containerInfo,+ ResourcePtr* resources,+ int resourceLen,+ char* name,+ int nameLen,+ char* source,+ int sourceLen,+ char* data,+ int dataLen);++ extern void fromExecutorInfo(ExecutorInfoPtr executorInfo,+ ExecutorIDPtr* executorID,+ FrameworkIDPtr* frameworkID,+ CommandInfoPtr* commandInfo,+ ContainerInfoPtr* containerInfo,+ ResourcePtr** resources,+ int* resourcesLen,+ char** name,+ int* nameLen,+ char** source,+ int* sourceLen,+ char** data,+ int* dataLen);++ extern void destroyExecutorInfo(ExecutorInfoPtr executorInfo);++ extern AttributePtr toAttribute(char* name,+ int nameLen,+ ValuePtr value);+ extern void fromAttribute(AttributePtr attribute,+ char** name,+ int* nameLen,+ ValuePtr* value);+ extern void destroyAttribute(AttributePtr attribute);++ extern RequestPtr toRequest(SlaveIDPtr slaveID,+ ResourcePtr* resources,+ int resourceLen);++ extern void fromRequest(RequestPtr request,+ SlaveIDPtr* slaveID,+ ResourcePtr** resources,+ int* resourceLen);++ extern void destroyRequest(RequestPtr request);++ extern ValuePtr toValue(int type,+ double scalar,+ ValueRangePtr* lows,+ int rangeLen,+ StdStringPtr* strings,+ int stringsLen,+ char* text,+ int textLen);++ extern void fromValue(ValuePtr value,+ int* type,+ double* scalar,+ ValueRangePtr** ranges,+ int* rangeLen,+ StdStringPtr** strings,+ int* stringsLen,+ char** text,+ int* textLen);++ extern void destroyValue(ValuePtr value);++ extern CommandInfoPtr toCommandInfo(CommandInfo_URIPtr* uris,+ int urisLen,+ EnvironmentPtr environment,+ bool shell,+ char* value,+ int valueLen,+ StdStringPtr* args,+ int argsLen,+ char* username,+ int usernameLen);++ extern void fromCommandInfo(CommandInfoPtr info,+ CommandInfo_URIPtr** uris,+ int* urisLen,+ EnvironmentPtr* environment,+ bool* shell,+ char** value,+ int* valueLen,+ StdStringPtr** args,+ int* argsLen,+ char** username,+ int* usernameLen);++ extern void destroyCommandInfo(CommandInfoPtr info);++ extern ResourceUsagePtr toResourceUsage(SlaveIDPtr slaveID,+ FrameworkIDPtr frameworkID,+ ExecutorIDPtr executorID,+ char* executorName,+ int nameLen,+ TaskIDPtr taskID,+ ResourceStatisticsPtr statistics);+ + extern void fromResourceUsage(ResourceUsagePtr usage,+ SlaveIDPtr* slaveID,+ FrameworkIDPtr* frameworkID,+ ExecutorIDPtr* executorID,+ char** executorName,+ int* nameLen,+ TaskIDPtr* taskID,+ ResourceStatisticsPtr* statistics);++ extern void destroyResourceUsage(ResourceUsagePtr usage);++ extern OfferPtr toOffer(OfferIDPtr offerID,+ FrameworkIDPtr frameworkID,+ SlaveIDPtr slaveID,+ char* hostname,+ int hostnameLen,+ ResourcePtr* resources,+ int resourcesLen,+ AttributePtr* attributes,+ int attributeLen,+ ExecutorIDPtr* executorIDs,+ int idsLen);++ void fromOffer(OfferPtr offer,+ OfferIDPtr* offerID,+ FrameworkIDPtr* frameworkID,+ SlaveIDPtr* slaveID,+ char** hostname,+ int* hostnameLen,+ ResourcePtr** resources,+ int* resourcesLen,+ AttributePtr** attributes,+ int* attributesLen,+ ExecutorIDPtr** executorIDs,+ int* idsLen);++ extern void destroyOffer(OfferPtr offer);+ + extern void destroyResourceStatistics(ResourceStatisticsPtr statistics);++ extern ResourceStatisticsPtr toResourceStatistics(double timestamp,+ double* cpusUserTimeSecs,+ double* cpusSystemTimeSecs,+ double cpusLimit,+ unsigned int* cpusPeriods,+ unsigned int* cpusThrottled,+ double* cpusThrottledTimeSecs,+ unsigned long* memoryResidentSetSize,+ unsigned long* memoryLimitBytes,+ unsigned long* memoryFileBytes,+ unsigned long* memoryAnonymousBytes,+ unsigned long* memoryMappedFileBytes,+ PerfStatisticsPtr perfStatistics,+ unsigned long* netRxPackets,+ unsigned long* netRxBytes,+ unsigned long* netRxErrors,+ unsigned long* netRxDropped,+ unsigned long* netTxPackets,+ unsigned long* netTxBytes,+ unsigned long* netTxErrors,+ unsigned long* netTxDropped+ );++ extern void fromResourceStatistics(ResourceStatisticsPtr stats,+ double* timestamp,+ double* cpusUserTimeSecs,+ bool* cpusUserTimeSecsSet,+ double* cpusSystemTimeSecs,+ bool* cpusSystemTimeSecsSet,+ double* cpusLimit,+ unsigned int* cpusPeriods,+ bool* cpusPeriodsSet,+ unsigned int* cpusThrottled,+ bool* cpusThrottledSet,+ double* cpusThrottledTimeSecs,+ bool* cpusThrottledTimeSecsSet,+ unsigned long* memoryResidentSetSize,+ bool* memoryResidentSetSizeSet,+ unsigned long* memoryLimitBytes,+ bool* memoryLimitBytesSet,+ unsigned long* memoryFileBytes,+ bool* memoryFileBytesSet,+ unsigned long* memoryAnonymousBytes,+ bool* memoryAnonymousBytesSet,+ unsigned long* memoryMappedFileBytes,+ bool* memoryMappedFileBytesSet,+ PerfStatisticsPtr* perfStatistics,+ unsigned long* netRxPackets,+ bool* netRxPacketsSet, + unsigned long* netRxBytes,+ bool* netRxBytesSet, + unsigned long* netRxErrors,+ bool* netRxErrorsSet, + unsigned long* netRxDropped,+ bool* netRxDroppedSet, + unsigned long* netTxPackets,+ bool* netTxPacketsSet, + unsigned long* netTxBytes,+ bool* netTxBytesSet, + unsigned long* netTxErrors,+ bool* netTxErrorsSet, + unsigned long* netTxDropped,+ bool* netTxDroppedSet+ );+ ++ extern ParameterPtr toParameter(char* key,+ int keyLen,+ char* value,+ int valueLen);+ extern void fromParameter(ParameterPtr parameter,+ char** keyP,+ int* keyLenP,+ char** valueP,+ int* valueLenP);+ extern void destroyParameter(ParameterPtr parameter);++ extern ParametersPtr toParameters(ParameterPtr* parameters,+ int pLen);+ extern void fromParameters(ParametersPtr params,+ ParameterPtr** parameters,+ int* pLen);+ extern void destroyParameters(ParametersPtr params);++ extern StdStringPtr toStdString(char* str,+ int strLen);++ extern void fromStdString(StdStringPtr sp,+ char** str,+ int* strLen);++ extern void destroyStdString(StdStringPtr sp);++ extern ValueRangePtr toRange(unsigned long low,+ unsigned long high);++ extern void fromRange(ValueRangePtr range,+ unsigned long* lowP,+ unsigned long* highP);++ extern void destroyRange(ValueRangePtr range);++ extern PerfStatisticsPtr toPerfStatistics(+ double timestamp,+ double duration,+ unsigned long* cycles,+ unsigned long* stalledCyclesFrontend,+ unsigned long* stalledCyclesBackend,+ unsigned long* instructions,+ unsigned long* cacheReferences,+ unsigned long* cacheMisses,+ unsigned long* branches,+ unsigned long* branchMisses,+ unsigned long* busCycles,+ unsigned long* refCycles,+ double* cpuClock,+ double* taskClock,+ unsigned long* pageFaults,+ unsigned long* minorFaults,+ unsigned long* majorFaults,+ unsigned long* contextSwitches,+ unsigned long* cpuMigrations,+ unsigned long* alignmentFaults,+ unsigned long* emulationFaults,+ unsigned long* l1DcacheLoads,+ unsigned long* l1DcacheLoadMisses,+ unsigned long* l1DcacheStores,+ unsigned long* l1DcacheStoreMisses,+ unsigned long* l1DcachePrefetches,+ unsigned long* l1DcachePrefetchMisses,+ unsigned long* l1IcacheLoads,+ unsigned long* l1IcacheLoadMisses,+ unsigned long* l1IcachePrefetches,+ unsigned long* l1IcachePrefetchMisses,+ unsigned long* llcLoads,+ unsigned long* llcLoadMisses,+ unsigned long* llcStores,+ unsigned long* llcStoreMisses,+ unsigned long* llcPrefetches,+ unsigned long* llcPrefetchMisses,+ unsigned long* dtlbLoads,+ unsigned long* dtlbLoadMisses,+ unsigned long* dtlbStores,+ unsigned long* dtlbStoreMisses,+ unsigned long* dtlbPrefetches,+ unsigned long* dtlbPrefetchMisses,+ unsigned long* itlbLoads,+ unsigned long* itlbLoadMisses,+ unsigned long* branchLoads,+ unsigned long* branchLoadMisses,+ unsigned long* nodeLoads,+ unsigned long* nodeLoadMisses,+ unsigned long* nodeStores,+ unsigned long* nodeStoreMisses,+ unsigned long* nodePrefetches,+ unsigned long* nodePrefetchMisses+ );++extern void fromPerfStatistics(PerfStatisticsPtr perf,+ double* timestamp,+ double* duration,+ unsigned long* cycles,+ bool* cyclesSet,+ unsigned long* stalledCyclesFrontend,+ bool* stalledCyclesFrontendSet,+ unsigned long* stalledCyclesBackend,+ bool* stalledCyclesBackendSet,+ unsigned long* instructions,+ bool* instructionsSet,+ unsigned long* cacheReferences,+ bool* cacheReferencesSet,+ unsigned long* cacheMisses,+ bool* cacheMissesSet,+ unsigned long* branches,+ bool* branchesSet,+ unsigned long* branchMisses,+ bool* branchMissesSet,+ unsigned long* busCycles,+ bool* busCyclesSet,+ unsigned long* refCycles,+ bool* refCyclesSet,+ double* cpuClock,+ bool* cpuClockSet,+ double* taskClock,+ bool* taskClockSet,+ unsigned long* pageFaults,+ bool* pageFaultsSet,+ unsigned long* minorFaults,+ bool* minorFaultsSet,+ unsigned long* majorFaults,+ bool* majorFaultsSet,+ unsigned long* contextSwitches,+ bool* contextSwitchesSet,+ unsigned long* cpuMigrations,+ bool* cpuMigrationsSet,+ unsigned long* alignmentFaults,+ bool* alignmentFaultsSet,+ unsigned long* emulationFaults,+ bool* emulationFaultsSet,+ unsigned long* l1DcacheLoads,+ bool* l1DcacheLoadsSet,+ unsigned long* l1DcacheLoadMisses,+ bool* l1DcacheLoadMissesSet,+ unsigned long* l1DcacheStores,+ bool* l1DcacheStoresSet,+ unsigned long* l1DcacheStoreMisses,+ bool* l1DcacheStoreMissesSet,+ unsigned long* l1DcachePrefetches,+ bool* l1DcachePrefetchesSet,+ unsigned long* l1DcachePrefetchMisses,+ bool* l1DcachePrefetchMissesSet,+ unsigned long* l1IcacheLoads,+ bool* l1IcacheLoadsSet,+ unsigned long* l1IcacheLoadMisses,+ bool* l1IcacheLoadMissesSet,+ unsigned long* l1IcachePrefetches,+ bool* l1IcachePrefetchesSet,+ unsigned long* l1IcachePrefetchMisses,+ bool* l1IcachePrefetchMissesSet,+ unsigned long* llcLoads,+ bool* llcLoadsSet,+ unsigned long* llcLoadMisses,+ bool* llcLoadMissesSet,+ unsigned long* llcStores,+ bool* llcStoresSet,+ unsigned long* llcStoreMisses,+ bool* llcStoreMissesSet,+ unsigned long* llcPrefetches,+ bool* llcPrefetchesSet,+ unsigned long* llcPrefetchMisses,+ bool* llcPrefetchMissesSet,+ unsigned long* dtlbLoads,+ bool* dtlbLoadsSet,+ unsigned long* dtlbLoadMisses,+ bool* dtlbLoadMissesSet,+ unsigned long* dtlbStores,+ bool* dtlbStoresSet,+ unsigned long* dtlbStoreMisses,+ bool* dtlbStoreMissesSet,+ unsigned long* dtlbPrefetches,+ bool* dtlbPrefetchesSet,+ unsigned long* dtlbPrefetchMisses,+ bool* dtlbPrefetchMissesSet,+ unsigned long* itlbLoads,+ bool* itlbLoadsSet,+ unsigned long* itlbLoadMisses,+ bool* itlbLoadMissesSet,+ unsigned long* branchLoads,+ bool* branchLoadsSet,+ unsigned long* branchLoadMisses,+ bool* branchLoadMissesSet,+ unsigned long* nodeLoads,+ bool* nodeLoadsSet,+ unsigned long* nodeLoadMisses,+ bool* nodeLoadMissesSet,+ unsigned long* nodeStores,+ bool* nodeStoresSet,+ unsigned long* nodeStoreMisses,+ bool* nodeStoreMissesSet,+ unsigned long* nodePrefetches,+ bool* nodePrefetchesSet,+ unsigned long* nodePrefetchMisses,+ bool* nodePrefetchMissesSet);++ extern void destroyPerfStatistics(PerfStatisticsPtr perf);++ extern ContainerInfoPtr toContainerInfo (int type,+ char* image,+ int imageLen,+ VolumePtr* volumes,+ int volumesLen);++ extern void fromContainerInfo (ContainerInfoPtr info,+ int* type,+ char** image,+ int* imageLen,+ VolumePtr** volumes,+ int* volumesLen);++ extern void destroyContainerInfo (ContainerInfoPtr containerInfo);++ extern VolumePtr toVolume (char* containerPath,+ int containerPathLen,+ char* hostPath,+ int hostPathLen,+ int mode);++ extern void fromVolume (VolumePtr p,+ char** containerPath,+ int* containerPathLen,+ char** hostPath,+ int* hostPathLen,+ int* mode);++ extern void destroyVolume(VolumePtr volume);++ extern HealthCheckPtr toHealthCheck (bool hasHTTP,+ int port,+ char* httpPath,+ int httpPathSize,+ unsigned int* statuses,+ int statusesSize,+ double* delaySeconds,+ double* intervalSeconds,+ double* timeoutSeconds,+ unsigned int* consecutiveFailures,+ double* gracePeriodSeconds,+ CommandInfoPtr command);+ + extern void fromHealthCheck (HealthCheckPtr p,+ bool* hasHTTP,+ int* port,+ char** httpPath,+ int* httpPathSize,+ unsigned int** statuses,+ int* statusesSize,+ double* delaySeconds,+ bool* delaySecondsSet,+ double* intervalSeconds,+ bool* intervalSecondsSet,+ double* timeoutSeconds,+ bool* timeoutSecondsSet,+ unsigned int* consecutiveFailures,+ bool* consecutiveFailuresSet,+ double* gracePeriodSeconds,+ bool* gracePeriodSecondsSet,+ CommandInfoPtr* command);++ extern void destroyHealthCheck (HealthCheckPtr p);+};++#endif
hs-mesos.cabal view
@@ -1,5 +1,5 @@ name: hs-mesos-version: 0.20.0.2+version: 0.20.1.0 description: Bindings to the Apache Mesos platform. .@@ -23,6 +23,7 @@ System.Mesos.Types, System.Mesos.Internal, System.Mesos.TaskStatus,+ System.Mesos.Lens, System.Mesos.Raw, System.Mesos.Raw.Attribute, System.Mesos.Raw.CommandInfo,@@ -59,12 +60,13 @@ System.Mesos.Raw.Value, System.Mesos.Raw.Volume -- other-extensions: - build-depends: base >=4.7 && < 5, bytestring, lens, managed+ build-depends: base >=4.7 && < 5, bytestring, lens, managed, template-haskell hs-source-dirs: src default-language: Haskell2010 include-dirs: ext, /usr/include, /usr/local/include/mesos install-includes: ext/executor.h,- ext/scheduler.h+ ext/scheduler.h,+ ext/types.h c-sources: ext/executor.cpp, ext/scheduler.cpp, ext/types/attribute.cpp,@@ -101,7 +103,7 @@ ext/types/value.cpp, ext/types/volume.cpp - extra-libraries: mesos stdc+++ extra-libraries: mesos stdc++ protobuf extra-lib-dirs: /usr/local/lib cc-options: -fPIC -std=c++11 ghc-options: -fPIC -funbox-strict-fields
src/System/Mesos/Internal.hs view
@@ -39,19 +39,25 @@ liftIO, ToID, FromID,- defEq+ defEq,+ makePrefixFields ) where import Control.Monad.Managed import Control.Applicative-import Data.ByteString (ByteString, packCStringLen)-import Data.ByteString.Unsafe (unsafeUseAsCStringLen)+import Control.Lens+import Control.Lens.TH+import Data.ByteString (ByteString, packCStringLen)+import Data.ByteString.Unsafe (unsafeUseAsCStringLen)+import Data.Char (toLower)+import qualified Data.List as L import Data.Word-import Foreign.C hiding (peekCString)-import qualified Foreign.Marshal as Ptr-import qualified Foreign.Ptr as Ptr-import qualified Foreign.Storable as Ptr+import Foreign.C hiding (peekCString)+import qualified Foreign.Marshal as Ptr+import qualified Foreign.Ptr as Ptr+import qualified Foreign.Storable as Ptr+import Language.Haskell.TH.Syntax (Name (..), OccName (..)) import System.Mesos.Types class CPPValue a where@@ -167,3 +173,11 @@ type ToID a = Ptr.Ptr CChar -> CInt -> IO a type FromID a = a -> Ptr.Ptr (Ptr.Ptr CChar) -> IO CInt++makePrefixFields p = makeLensesWith tweakedRules+ where+ tweakedRules = defaultFieldRules & lensField .~ (\ns n -> baseF (map downcasePrefix ns) (downcasePrefix n))+ baseF = defaultFieldRules ^. lensField+ downcasePrefix n@(Name (OccName s) f) = case L.stripPrefix p s of+ Nothing -> n+ Just r -> Name (OccName (map toLower p ++ r)) f
+ src/System/Mesos/Lens.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE FunctionalDependencies #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeSynonymInstances #-}+-- | Currently just raw TH-generated 'Lens'es and 'Prism's. FUNCTION & CLASS NAMES IN THIS FILE ARE EXTREMELY LIKELY TO CHANGE IN FUTURE RELEASES.+module System.Mesos.Lens where++import Control.Lens.TH+import System.Mesos.Internal (makePrefixFields)+import System.Mesos.Types++makePrisms ''TaskState+makePrisms ''Status+makeFields ''FrameworkID+makeFields ''OfferID+makeFields ''SlaveID+makeFields ''TaskID+makeFields ''ExecutorID+makeFields ''ContainerID+makeFields ''FrameworkInfo+makeFields ''HealthCheckStrategy+makePrisms ''HealthCheckStrategy+makePrefixFields "healthCheck" ''HealthCheck+makePrefixFields "command" ''CommandInfo+makePrefixFields "commandURI" ''CommandURI+makePrisms ''CommandValue+makePrefixFields "executorInfo" ''ExecutorInfo+makePrefixFields "masterInfo" ''MasterInfo+makePrefixFields "slaveInfo" ''SlaveInfo+makeLenses ''Filters+makePrisms ''Value+makeFields ''Resource+makePrefixFields "resource" ''ResourceStatistics+makeFields ''ResourceUsage+makePrefixFields "performanceStatistics" ''PerformanceStatistics+makeFields ''Request+makeFields ''Offer+makePrisms ''TaskExecutionInfo+makeFields ''TaskInfo+makePrefixFields "taskStatus" ''TaskStatus+makeFields ''Credential+makePrisms ''Mode+makeFields ''Volume+makeFields ''ContainerType+makePrisms ''ContainerType+makePrefixFields "containerInfo" ''ContainerInfo
src/System/Mesos/Raw/TaskInfo.hs view
@@ -48,7 +48,7 @@ instance CPPValue TaskInfo where marshal t = do- (np, nl) <- cstring $ taskInfoName t+ (np, nl) <- cstring $ taskName t rps <- mapM cppValue (taskResources t) tid <- cppValue $ taskID t sid <- cppValue $ taskSlaveID t
src/System/Mesos/Types.hs view
@@ -497,7 +497,7 @@ -- A different executor can be used to launch this task, and subsequent tasks -- meant for the same executor can reuse the same ExecutorInfo struct. data TaskInfo = TaskInfo- { taskInfoName :: !ByteString+ { taskName :: !ByteString , taskID :: !TaskID , taskSlaveID :: !SlaveID , taskResources :: ![Resource]
test/TestExecutor.hs view
@@ -1,11 +1,11 @@ {-# LANGUAGE OverloadedStrings #-} module Main where-import Control.Monad-import Data.Monoid-import System.Exit-import System.Mesos.Executor-import System.Mesos.TaskStatus-import System.Mesos.Types+import Control.Monad+import Data.Monoid+import System.Exit+import System.Mesos.Executor+import System.Mesos.TaskStatus+import System.Mesos.Types data TestExecutor = TestExecutor instance ToExecutor TestExecutor where
test/TestFramework.hs view
@@ -29,7 +29,7 @@ } executorSettings fid = e { executorName = Just "Test Executor (Haskell)"}- where e = executorInfo (ExecutorID "default") fid (CommandInfo [] Nothing (ShellCommand "/Users/ian/Code/personal/hs-mesos/dist/build/test-executor/test-executor") Nothing) requiredResources+ where e = executorInfo (ExecutorID "default") fid (commandInfo $ ShellCommand "/Users/ian/Code/personal/hs-mesos/dist/build/test-executor/test-executor") requiredResources instance ToScheduler TestScheduler where registered _ _ _ _ = putStrLn "Registered!"